KR20190131535A - 프로그램을 업데이트하기 위한 방법 및 장치 - Google Patents

프로그램을 업데이트하기 위한 방법 및 장치 Download PDF

Info

Publication number
KR20190131535A
KR20190131535A KR1020197031220A KR20197031220A KR20190131535A KR 20190131535 A KR20190131535 A KR 20190131535A KR 1020197031220 A KR1020197031220 A KR 1020197031220A KR 20197031220 A KR20197031220 A KR 20197031220A KR 20190131535 A KR20190131535 A KR 20190131535A
Authority
KR
South Korea
Prior art keywords
image
program
block
memory
blocks
Prior art date
Application number
KR1020197031220A
Other languages
English (en)
Other versions
KR102434821B1 (ko
Inventor
한스-발터 슈미트
악셀 아우에
마티아스 슈라이버
Original Assignee
로베르트 보쉬 게엠베하
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 로베르트 보쉬 게엠베하 filed Critical 로베르트 보쉬 게엠베하
Publication of KR20190131535A publication Critical patent/KR20190131535A/ko
Application granted granted Critical
Publication of KR102434821B1 publication Critical patent/KR102434821B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/008Registering or indicating the working of vehicles communicating information to a remotely located station

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)
  • Stored Programmes (AREA)
  • Memory System (AREA)

Abstract

본 발명은, 프로그램의 제1 이미지가 실행되는 한편(단계 "11"), 프로그램의 어드레스 공간(18)이 블록들 상에 이미지화되고, 이 블록들이 1단의 모드에서 작동되며; 제1 이미지의 일 부분이, 상기 블록들 아래에 있는 특정 블록 상에 이미지화되는 어드레스 공간(18) 내부의 하나의 어드레스 영역으로부터 메모리의 보호 블록(19) 내로 복사되며(단계 "12"); 상기 블록은 다단의 모드로 변경되고, 상기 제1 이미지의 부분에 추가로 프로그램의 제2 이미지(17)의 일 부분에 의해서 프로그래밍 되는 한편(단계 "13"), 상기 어드레스 영역은 일시적으로 보호 블록(19) 상에 이미지화되며; 상기 어드레스 영역은 재차 상기 블록으로 전환되는 한편(단계 "14"), 상기 블록은 다단의 모드에 계속 남아 있으며; 제2 이미지(17)가 불완전한(15, N) 동안에는, 복사 과정(단계 "12"), 프로그래밍 과정(단계 "13"), 및 전환 과정(단계 "14")이 이미지의 또 다른 부분들에 의해서 반복되며; 제2 이미지(17)가 완전(15, Y)하게 되자마자, 제1 이미지 대신 상기 제2 이미지가 실행되는(단계 "16") 것을 특징으로 하는, MLC 기술을 이용하여 플래시 메모리 내에서 프로그램을 업데이트하기 위한 방법(10)에 관한 것이다.

Description

프로그램을 업데이트하기 위한 방법 및 장치
본 발명은, 프로그램을 업데이트하기 위한 방법에 관한 것이다. 본 발명은, 또한 상응하는 장치, 상응하는 컴퓨터 프로그램 및 상응하는 기억 매체에 관한 것이다.
내용이 전기적으로 소거될 수 있는 비휘발성 전자 메모리 모듈은, 전기적으로 소거 가능하고 프로그램 가능한 판독 전용 메모리(electrically erasable programmable read-only memory, EEPROM)로서 당업자에게 공지되어 있다. 이하의 진술의 틀 안에서, "EEPROM"이라는 용어는 넓은 단어 의미로 사용되고, 종래의 EEPROM 외에 마찬가지로 최근의 (블록 방식으로 소거 가능한) 소위 플래시 메모리도 포함한다. 적은 소비 전력으로 비휘발성 기억을 가능하게 하기 위해, 종래 기술에 따른 차량용 전자 장치에서는, 개별 메모리 셀에 저장된 정보가 플로팅 게이트 상에 또는 금속 절연체 반도체 전계 효과 트랜지스터(metal insulator semiconductor field-effect transistor, MISFET)의 전하 트래핑 메모리 소자 내에 전하의 형태로 기억되는 상기와 같은 플래시-EEPROM-메모리가 주로 사용된다. 원칙적으로, 이 경우에 메모리 셀은 소위 셀 어레이(cell array) 내에 매트릭스로서 배열되어 있으며, 이 경우 하나의 좌표를 통해서는 어드레스 라인이 메모리 셀의 열 또는 행을 선택하기 위해서 이용되고, 다른 좌표 내에서는 데이터 라인이 메모리 셀로 가이드 된다.
기억 밀도를 증가시키기 위해, 이 경우에는 셀 당 하나를 초과하는 비트가 기억되는 다단의 셀(multi-level cell, MLC)이 때때로 사용된다. 이와 같은 상황을 가능하게 하기 위하여, 메모리 셀 내에 저장된 전하량이 더 정밀하게 계량되고, 판독 출력의 경우에는 또한 2개를 초과하는 가능한 상태를 구별하기 위하여 그리고 하나를 초과하는 비트를 저장할 수 있기 위하여 더욱 정확하게 평가된다. 이와 같은 조치는, 1단의 셀(single-level cell, SLC)에 비해 판독 속도 및 기록 속도가 느려진다는 단점을 내포한다. MLC는 또한 임의의 충전 손실에 훨씬 민감하게 반응한다.
DE102014223035A1호에서는, 휘발성 메모리의 메모리 인터페이스, 특히 MLC-NAND-메모리의 메모리 인터페이스와, 마이크로 컨트롤러의 인터페이스 사이에서 컴퓨터 시스템 내부의 데이터를 전송하기 위한 방법이 소개되며, 이 방법은 마이크로 컨트롤러의 부팅 과정이 시작될 때에 MLC-NAND-메모리의 메모리 인터페이스로부터 데이터를 판독하는 단계, 및 판독된 데이터를 휘발성 메모리의 메모리 인터페이스로 제공하는 단계를 포함한다.
본 발명은, 독립 청구항들에 따른 프로그램을 업데이트하기 위한 방법, 상응하는 장치, 상응하는 컴퓨터 프로그램, 및 상응하는 기억 매체를 제공한다.
이 경우, 본 발명에 따른 접근 방식은, [차량 전자 시스템의 작업장 기반 소프트웨어(SW) 업데이트의 고비용으로부터 기인하여] 최근의 시스템에서는 점차 공중 인터페이스(over the air, OTA)를 통해, 지시 및 데이터를 포함하는 프로그램 이미지 또는 시스템 이미지(image)가 변경된다는 지식에 기초한다. 이와 같은 업데이트를 실행하기 위해, 다양한 가능성들이 제공된다; 이들은 각각 상이한 장점 및 단점을 갖고 있다.
종래의 방식은, 2개의 시스템 이미지를 지속하는 것을 토대로 한다: 일 시스템 이미지로부터는, 엔진 제어의 경우에 예컨대 엔진 작동이 그대로 유지되는 한편, 새로운 시스템 이미지는 관련 제어 장치(electronic control unit, ECU) 상에서 실행된다. 엔진의 그 다음 시작 때에 제어 장치는 상기 새로운 시스템 이미지를 토대로 해서 작동될 수 있다.
상기와 같은 종래의 방식을 지원하기 위해서는, OTA-불가능한 제어 장치에서보다 2배 많은 기억 장소가 필요한데, 그 이유는 2개의 시스템 이미지들이 동시에 비휘발성 메모리(non-volatile memory, NVM) 내에 배치되어야만 하기 때문이다. 이와 같은 조치는, [제어 장치의 OTA-능력이 차량 제조자 또는 주문 생산자(original equipment manufacturer, OEM)에 의해서 최종적으로 사용되는지의 여부와 무관하게] 상응하는 제어 장치를 제조할 때에 부품 비용이 높다는 단점을 내포한다.
그렇기 때문에, 업데이트의 목적으로 2개의 시스템 이미지들을 기억시키는 시간 간격 동안 메모리 셀을 MLC로서, 다시 말하자면 적어도 2단으로 이용하는 것이 제안된다. 이 방법의 장점은, 종래의 방식에 비해 감소된 메모리 셀 요구에 있다. 오히려, MLC 기술의 이용에 의해서는, 추가 기억 용량의 단 하나의 부분만 필요하다.
종속 청구항들에 열거된 조치들에 의해서, 독립 청구항에 명시된 기본 아이디어의 바람직한 개량 및 개선이 가능하다. 이로써, 마이크로 컨트롤러(μC)를 토대로 하는 차량 제어 장치에서는 OTA-업데이트의 틀 안에서 이 방법을 적용하는 것이 제안될 수 있다. 이와 같은 방식에 의해서는, NVM에서 OTA를 위해 2개의 시스템 이미지들을 지속하기 위하여, (상응하는 비용상 단점을 갖는) 종래의 방식에서, 복수의 플래시 메모리를 갖는 μC가 사용되는지의 여부 또는 감소된 시스템 성능(performance)이 일시적으로 감수되는지의 여부가, 적용 중에 결정될 수 있다.
본 발명의 실시예들이 각각의 도면에 도시되어 있으며, 이하의 명세서에서 더욱 상세하게 설명된다. 도면부에서,
도 1은 제1 실시예에 따른 방법의 흐름도를 도시한다.
도 2는 이 방법의 제1 단계를 도시한다.
도 3은 이 방법의 제2 단계를 도시한다.
도 4는 이 방법의 제3 단계를 도시한다.
도 5는 이 방법의 제4 단계를 도시한다.
도 6은 이 방법의 결과를 도시한다.
도 7은 제2 실시예에 따른 제어 장치를 개략적으로 도시한다.
도 1은, 제안된 방법(10)의 기본적인 기능적 양태들을 도시하며, 이제 이들 양태들은 도 2 내지 도 6 중 각각 하나의 도면과 관련하여 설명될 것이다. 도 2 내지 도 6에서, SLC-모드에서 작동되는 셀은 실선으로 도시되어 있는 반면, MLC-모드에서 작동되는 셀은 파선으로 도시되어 있다.
도 2는, 먼저 정상적인 작동 상태(11)를 보여주는데, 이 작동 상태에서는 프로그램의 제1 이미지가 관련 어드레스 공간(18) 내에서 실시되는 한편, 전체 메모리 블록의 셀은 SLC로서, 다시 말해 1단으로 작동된다. 여기에서, 개별 블록은 각각 1 Mbyte를 포함할 수 있으며, 이 경우 기존의 업데이트를 위해서는, 프로그램의 어드레스 공간(18)에 의해 반드시 둘러싸일 필요가 없는, 처음에 아직 이용되지 않은 동일한 크기의 보호 블록(19)이 준비된다.
도 3은, 새로운 이미지를 요청한 후의 구성을 도시한다. 여기에서는, 일 블록의 내용이 보호 블록(19) 내로 복사되었다(단계 "12"). 원래 최초 블록에 할당 된 어드레스 범위는 이제 하드웨어에 따라 보호 블록(19) 상에 이미지화되고, 이로써 보호 블록은 진행 중인 프로그램의 시야로부터 프로그램의 어드레스 공간(18) 내로 흡사하게 "페이드 인(fade in)" 된다.
이제, 도 4에 도시된 바와 같이, 최초 블록은 MLC-모드로 전환될 수 있고, 제1 이미지에 추가로, 블록 크기에 상응하는 제2 이미지(17)의 일 부분이 프로그래밍될 수 있다(단계 "13"). 프로그램의 어드레스 공간(18) 내에서 프로그래밍 될 블록이 계속해서 흡사하게 보호 블록(19)과 "교환"되기 때문에, 제1 이미지의 기능성은 상기 프로그래밍 과정에 의해서 악영향을 받지 않는다.
그 다음에, MLC-블록은 재차 상기와 같은 의도로 최초 어드레스에서 페이드 인 될 수 있는 한편(단계 "14"), 상기 블록이 다단의 모드에 계속 남아 있음으로써, 결과적으로 제1 이미지는 도 5에서와 마찬가지로 계속해서 실시될 수 있다. 상응하는 방식으로, 모든 블록이 MLC-모드에 있음으로써 2개의 이미지들이 모두 완전히 NVM에 존재하게 될 때까지(결정 단계 "15" - 도 1), 또 다른 블록에 의해서 과정이 진행되며, 이와 같은 상황은 도 6에 따른 상태(16)에 상응한다.
상기 최종 상태(16)에서는, 프로그램의 제1 또는 제2 이미지가 선택적으로 실시될 수 있다. 제2 이미지(17)의 기능성이 (예컨대 상기와 같은 정도로 업데이트된 차량의 상이한 제어 장치들과 연계하여) 보장된 후에는, 연속 작동 중에 프로그램의 신뢰성을 최대화하기 위하여, 블록들이 상기 순서와 반대인 절차에 따라 재차 1단의 모드로 재-전환될 수 있다.
본 방법(10)은, 도 7의 개략도가 명확하게 보여주는 바와 같이, 예를 들어 제어 장치(20) 내에서 예를 들어 소프트웨어 또는 하드웨어로 구현될 수 있거나 소프트웨어와 하드웨어로 구성된 혼합 형태로 구현될 수 있다.

Claims (12)

  1. 복수의 블록을 포함하는 메모리 내에서 프로그램을 업데이트하기 위한 방법(10)에 있어서,
    - 프로그램의 제1 이미지가 실행되는 한편(단계 "11"), 프로그램의 어드레스 공간(18)이 블록들 상에 이미지화되고, 상기 블록들이 1단의 모드에서 작동되며,
    - 제1 이미지의 일 부분이, 상기 블록들 아래에 있는 특정 블록 상에 이미지화되는 어드레스 공간(18) 내부의 하나의 어드레스 영역으로부터 메모리의 보호 블록(19) 내로 복사되며(단계 "12"),
    - 상기 블록은 다단의 모드로 변경되고, 상기 제1 이미지의 부분에 추가로 프로그램의 제2 이미지(17)의 일 부분에 의해서 프로그래밍 되는 한편(단계 "13"), 상기 어드레스 영역은 일시적으로 보호 블록(19) 상에 이미지화되며,
    - 상기 어드레스 영역은 재차 상기 블록으로 전환되는 한편(단계 "14"), 상기 블록은 다단의 모드에 계속 남아 있으며,
    - 제2 이미지(17)가 불완전한(15, N) 동안에는, 복사 과정(단계 "12"), 프로그래밍 과정(단계 "13"), 및 전환 과정(단계 "14")이 이미지의 또 다른 부분들에 의해서 반복되며,
    - 제2 이미지(17)가 완전(15, Y)하게 되자마자, 제1 이미지 대신 상기 제2 이미지가 실행되는(단계 "16") 것을 특징으로 하는, 프로그램을 업데이트하기 위한 방법(10).
  2. 제1항에 있어서,
    - 제2 이미지(17)의 기능성이 상기 실행(단계 "16") 동안 검사되며,
    - 기능성이 보장된 경우에는, 블록들이 1단의 모드로 재-변경되는 것을 특징으로 하는, 프로그램을 업데이트하기 위한 방법(10).
  3. 제1항에 있어서,
    - 다단 셀들의 정보의 평가를 가능하게 하기 위하여, 메모리는 더 많은 액세스 타임으로 작동되는 것을 특징으로 하는, 프로그램을 업데이트하기 위한 방법(10).
  4. 제1항에 있어서,
    - 제어 장치는 정상적인 SLC 모드에서 작동될 수 있으며, 이때 액세스 타임은 더 짧고, 따라서 성능은 더 높으며,
    - 제어 장치는 MLC 모드에서 작동될 수 있으며, 이때 액세스 타임은 더 길고, 따라서 성능은 더 낮은 것을 특징으로 하는, 프로그램을 업데이트하기 위한 방법(10).
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    - 프로그램은, 자동차 내의 필드 디바이스, 특히 연소 기관을 제어하도록 조정되어 있는 것을 특징으로 하는, 프로그램을 업데이트하기 위한 방법(10).
  6. 제5항에 있어서,
    - 제2 이미지(17)는 프로그래밍 전에 공중 인터페이스를 통해 차량 내로 전송되는 것을 특징으로 하는, 프로그램을 업데이트하기 위한 방법(10).
  7. 제1항 내지 제6항 중 어느 한 항에 있어서,
    - 상기 메모리는 비휘발성인 것을 특징으로 하는, 프로그램을 업데이트하기 위한 방법(10).
  8. 제7항에 있어서,
    - 상기 메모리는 플래시-EEPROM, 특히 NAND-플래시 또는 NOR-플래시인 것을 특징으로 하는, 프로그램을 업데이트하기 위한 방법(10).
  9. 제1항 내지 제8항 중 어느 한 항에 따른 방법(10)을 실시하도록 구성된, 컴퓨터 프로그램.
  10. 제9항에 따른 컴퓨터 프로그램이 기억되어 있는, 기계 판독 가능한 기억 매체.
  11. 제1항 내지 제8항 중 어느 한 항에 따른 방법(10)을 실시하도록 구성된, 장치(20).
  12. 마이크로 컨트롤러 형태의, 제11항에 따른 장치(20).
KR1020197031220A 2017-03-29 2018-03-06 프로그램을 업데이트하기 위한 방법 및 장치 KR102434821B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102017205274.0A DE102017205274A1 (de) 2017-03-29 2017-03-29 Verfahren und Vorrichtung zum Aktualisieren eines Programmes
DE102017205274.0 2017-03-29
PCT/EP2018/055466 WO2018177698A1 (de) 2017-03-29 2018-03-06 Verfahren und vorrichtung zum aktualisieren eines programmes

Publications (2)

Publication Number Publication Date
KR20190131535A true KR20190131535A (ko) 2019-11-26
KR102434821B1 KR102434821B1 (ko) 2022-08-22

Family

ID=61599145

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197031220A KR102434821B1 (ko) 2017-03-29 2018-03-06 프로그램을 업데이트하기 위한 방법 및 장치

Country Status (7)

Country Link
US (1) US10990381B2 (ko)
EP (1) EP3602275A1 (ko)
JP (1) JP6832448B2 (ko)
KR (1) KR102434821B1 (ko)
CN (1) CN110462585B (ko)
DE (1) DE102017205274A1 (ko)
WO (1) WO2018177698A1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070300205A1 (en) * 2006-06-26 2007-12-27 Research In Motion Limited Method and system for generating a reverse binary patch
US7886287B1 (en) * 2003-08-27 2011-02-08 Avaya Inc. Method and apparatus for hot updating of running processes
US20130322169A1 (en) * 2012-05-31 2013-12-05 Seagate Technology Llc Multi-level cell (mlc) update with protected mode capability
US20130345021A1 (en) * 2012-06-26 2013-12-26 Suzuki Motor Corporation Ratio shift control system for an automatic transmission

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7752617B2 (en) * 2003-11-20 2010-07-06 International Business Machines Corporation Apparatus, system, and method for updating an embedded code image
ATE392661T1 (de) * 2004-03-10 2008-05-15 Sony Ericsson Mobile Comm Ab Automatisierter datensicherungsspeicher in firmware-aufwertungen
DE102005059593A1 (de) 2005-05-25 2006-11-30 Robert Bosch Gmbh Verfahren und Vorrichtung zur Umschaltung bei einem Speicher für ein Steuergerät
US20080163201A1 (en) * 2006-12-29 2008-07-03 Fabrice Jogand-Coulomb Apparatuses for launching a program application
TWI397071B (zh) * 2008-12-31 2013-05-21 A Data Technology Co Ltd 記憶體儲存裝置及其控制方法
US8886990B2 (en) * 2011-01-27 2014-11-11 Apple Inc. Block management schemes in hybrid SLC/MLC memory
TWI459294B (zh) * 2011-03-18 2014-11-01 Phoenix Tech Ltd Bios程式的更新方法與其電腦系統
WO2012170521A2 (en) * 2011-06-07 2012-12-13 Lsi Corporation Management of device firmware update effects as seen by a host
US20150120988A1 (en) * 2013-10-28 2015-04-30 Skymedi Corporation Method of Accessing Data in Multi-Layer Cell Memory and Multi-Layer Cell Storage Device Using the Same
US9043537B1 (en) * 2013-11-21 2015-05-26 Sandisk Technologies Inc. Update block programming order
US9436456B2 (en) * 2014-04-17 2016-09-06 Myine Electronics, Inc. System and method for management of software updates at a vehicle computing system
DE102014223035A1 (de) 2014-11-12 2016-05-12 Robert Bosch Gmbh Verfahren und Speicherverwaltungsvorrichtung zum Übertragen von Daten innerhalb eines Compuer-Systems, Speichersystem und Computer-System
US20170168725A1 (en) * 2015-12-10 2017-06-15 Kabushiki Kaisha Toshiba Memory system that updates firmware in response to predetermined events

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7886287B1 (en) * 2003-08-27 2011-02-08 Avaya Inc. Method and apparatus for hot updating of running processes
US20070300205A1 (en) * 2006-06-26 2007-12-27 Research In Motion Limited Method and system for generating a reverse binary patch
US20130322169A1 (en) * 2012-05-31 2013-12-05 Seagate Technology Llc Multi-level cell (mlc) update with protected mode capability
US20130345021A1 (en) * 2012-06-26 2013-12-26 Suzuki Motor Corporation Ratio shift control system for an automatic transmission

Also Published As

Publication number Publication date
CN110462585B (zh) 2023-08-08
US20200026509A1 (en) 2020-01-23
CN110462585A (zh) 2019-11-15
JP2020515975A (ja) 2020-05-28
US10990381B2 (en) 2021-04-27
JP6832448B2 (ja) 2021-02-24
KR102434821B1 (ko) 2022-08-22
WO2018177698A1 (de) 2018-10-04
DE102017205274A1 (de) 2018-10-04
EP3602275A1 (de) 2020-02-05

Similar Documents

Publication Publication Date Title
US7791952B2 (en) Memory device architectures and operation
KR100894809B1 (ko) 메모리 시스템 및 그것의 프로그램 방법
US9182928B2 (en) Lower page only host burst writes
US8164959B2 (en) Method and system for programming non-volatile memory cells based on programming of proximate memory cells
US8072804B2 (en) Multi-bit flash memory devices and methods of programming and erasing the same
US20050273549A1 (en) Memory device with user configurable density/performance
US9324441B1 (en) Fast adaptive trimming of operating parameters for non-volatile memory devices
US9384839B2 (en) Write sequence providing write abort protection
US9378823B2 (en) Programming a memory cell to a voltage to indicate a data value and after a relaxation time programming the memory cell to a second voltage to indicate the data value
US20090070523A1 (en) Flash memory device storing data with multi-bit and single-bit forms and programming method thereof
KR100823169B1 (ko) 향상된 동작 특성을 갖는 플래시 메모리 시스템 및 그것의액세스 방법
US20060168414A1 (en) Memory block locking apparatus and methods
KR20190131535A (ko) 프로그램을 업데이트하기 위한 방법 및 장치
US9389999B2 (en) System and method for emulating an EEPROM in a non-volatile memory device
US10446258B2 (en) Methods and apparatus for providing redundancy in memory
US9003105B2 (en) Semiconductor memory device and method for writing therein
KR20110001058A (ko) 불휘발성 메모리 소자의 동작 방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant