JSONとCoreDataの連携について下記サイトのサンプルコード(Swift-3)を元にプログラムを書いています.
http://docs.fabo.io/swift/coredata/001_json.html

let wordDatas: Words = Words(entity: entity, insertInto: context)
do {
     try wordDatas.updateFromDictionary(dataDictionary: jsonData as! [String : Any])
   } catch {
            print("Error updateFromDictionary:\(error)")
   }

内容はJSONファイルを読み込みCoreDataへ保存するコードです.
問題の箇所は上記の部分で,(サンプルより変数名等が違うだけのものですが)3行目のメソッド呼び出しの行でEXC_BAD_ACCESSが出て異常終了してしまいます.
Wordsクラスの中身も(これも変数名が違うだけですが)下記に示しておきます.

@objc(Words)
public class Words: NSManagedObject {
    @NSManaged var id: NSNumber
    @NSManaged var english: String
    @NSManaged var japanese: String
    func updateFromDictionary(dataDictionary: [String: Any]) throws {
        // バリデーション.
        guard let tmp_id: NSNumber  = dataDictionary["id"] as? NSNumber,
            let tmp_english: String   = dataDictionary["english"] as? String,
            let tmp_japanese: String = dataDictionary["japanese"] as? String

            else{
                throw NSError(domain: "Failed validation of JSON object. ", code: -1, userInfo: nil)
        }

        // データを反映.
        id = tmp_id
        english = tmp_english
        japanese = tmp_japanese
    }

}

jsonDataの中身はprintで確認した所,うまくJSONファイル内の1行目のテーブルを読み込めているようでした.
EXC_BAD_ACCESSのよくある原因としては解放済みのオブジェクトへアクセスした場合などのようですが,インスタンスを生成した直後にも関わらずこのような現象が起きてしまい悩んでおります.