분류 전체보기 779

[ Nandflash ] 09. Nandflash_F59L2G81A의 상세 Config

PIN CONFIGURATION TSOPI 48L, 12mm X 20mm Body, 0.5mm Pin Pitch BALL CONFIGURATION BGA 63 BALL, 9mm X 11mm Body, 0.8 Ball Pitch Pin Description => Symbol Pin Name Functions I/O0~I/O7 Data Inputs / Outputs I / O 핀은 명령, 주소 및 데이터를 입력하고 읽기 작업 중에 데이터를 출력하는 데 사용됩니다. I / O 핀은 칩이 선택 해제되거나 출력이 비활성화되면 Hi-Z로 플로팅됩니다. CLE Command Latch Enable LE 입력은 내부 명령 레지스터로 전송 된 명령의 활성화 경로를 제어합니다. 명령은 CLE가 높은 WE 신호의 상승 에지..

[ Nandflash ] 08. Nandflash_F59L2G81A의 특징

NANDFLASH_F59L2G81A:zap: 특징 전압공급 : 3.3V(2.7V ~ 3.3V) 조직 메모리 셀 어레이 : (256M + 16M) X 8bit 데이터 레지스터 : (2K + 64) X 8bit 자동 프로그램 및 지우기 페이지 프로그램 : (2K + 64) Byte 블록 지우기 : (128 + 4K) Byte25*9 페이지 읽기 작업 페이지 크기 : (2K+64) Byte 랜덤 읽기 : 25us(최대) 직렬 액세스 : 25ns(최소) 메모리 셀 : 1bit /메모리 셀 Fast Write Cycle Time(빠른 주기 시간) 프로그램 시간 : 250us (Typ.) 블록 지우기 시간 : 2ms (Typ.) 명령 / 주소 / 데이터 다중 I/O포트 하드웨어 데이터 보호 전원 전환 중 프로그램 ..

[ Nandflash ] 07. 낸드플래시의 수명연장 방법

생명연장의 꿈 그렇다고 손놓고 있을 엔지니어들이 아니다. 대용량이라는 절대 무적의 메리트를 쉽게 포기할 수는 없다. 갖가지 수명연장 대책이 나오지만 여기서는 그 일부만 소개하겠다. 웨어레벨링 Wear-Leveling 각 셀의 산화막의 수명은 대부분 비슷하다. 이런 상황에서 특정 셀만 집중적으로 사용하면 그 셀의 산화막만 집중적으로 손상받게 되고, 그 셀만 먼저 수명을 다할것이다. 이러면 전체용량이 감소되는 것이기 때문에 달갑지 않다. 이런 사태를 예방하는 것이 웨어레벨링이다. 쉽게말하면, 각 셀을 골고루 사용해서 전체 셀의 수명을 일정하게 관리해주는 것이다. 전체적인 수명을 최대로 사용할 수 있는 것! ECC Error Check and Correct : 에러 수정 기능 Controller의 에러 수정 ..

[ Nandflash ] 06. SLC, MLC, TLC

MLC와 TLC 앞서 설명한 플래시메모리는 한 셀에 1비트만 저장이 가능했다. 0아니면 1이었으니까. 이런 셀을 무수히 많이 집적해서 플래시 메모리를 만드는데 셀이 10억개 집적되어 있으면 1Gb(128MB)의 용량을 갖는식으로. 플래시메모리는 저장매체이니 더 많은 저장용량을 원하는건 당연한 요구이다. 그래서 머리를 굴리는 것이 "한 셀에 2비트씩 저장해보자!!" 한셀에 저장되는 용량이 2배면 셀의 개수(메모리 다이의 크기)를 늘리지 않아도 저장용량이 단숨에 2배로 늘어난다. ?? 그럼 이것을 어떻게 구현할 것인가? 전자있다(0), 전자없다(1) 의 단순한 구분을 뛰어넘어서 전자없다(11), 전자적다(10), 전자많다(01), 전자아주많다(00)로 구분을 세분화 한것이다. 이를 기록하기 위해서 쓰기 과정..

[ Nandflash ] 05. 낸드플래시의 작동원리와 수명

낸드플래시 작동 원리 기본적인 모스펫 구조에 플로팅 게이트(부유 게이트)가 추가된 형테이다. 저 플로팅 게이트에 전자를 저장함으로써 데이터를 저장하는 것이다. 플로팅 게이트에 전자가 있으면(많으면) 0으로 인식 ( programmed ) 플로팅 게이트에 전자가 없으면(적으면) 1로 인식( erased, unprogrammed ) 기본 구조는 이렇지만 현재는 플로팅게이트가 아닌 산화막에 전자를 저장하고 플로팅게이트를 생략해버리는 식(삼성, CTF) 등의 발전된 방식이 많이 존재한다. Control Gate에 전압을 인가하면 Source에서 Drain으로 이동하던 전자가 tunneling으로 Floating Gate로 들어가게 된다. # Note Tunneling이란 낮은 에너지를 갖는 입자가 에너지가 높으..

[ Nandflash ] 04. 낸드플래시와 메모리구조

낸드 플래시 메모리 NAND Flash Memory 반도체의 셀이 직렬로 배열되어 있는 플래시 메모리의 한 종류 플래시 메모리(Flash Memory)는 반도체 칩 내부의 전자회로 형태에 따라 직렬로 연결된 낸드 플래시와 병렬로 연결된 노어플래시로 구분된다. 낸드플래시는 용량을 늘리기 쉽고 쓰기 속도가 빠른반면 노어플래시는 읽기속도가 빠른 장점을 갖고 있다.(NOR가 쓰기가 수천배 느리다 -> 치명적 단점) 낸드 플래시는 저장단위인 셀을 수직으로 배열하는 구조이기 때문에 좁은 면적에 많은 셀을 만들 수 있어 대용량화가 가능하다. 또한 데이터를 순차적으로 찾아가 읽기 때문에 노어플래시보다 읽기 속도는 느리지만 별도로 셀의 주소를 기억할 필요가 없어 쓰기속도는 훨씬 빠르다. 제조단가가 노어플레시보다 싸다. ..

[ Nandflash ] 03. 문턱전압(Threshold Voltage)

Threshold Voltage(문턱전압) 문턱전압은 Threshold Voltage(Vth)라는 단어를 그대로 직역한 용어이다. 디램(D-RAM), 낸드 플래시(NAND Flash) 등의 메모리 반도체부터 시스템 집적 반도체(Sytem IC) 같은 비메모리 반도체, 또는 미래의 어떤 능동소자 까지 모든 반도체에서 공통적으로 사용되는 개념이다. 방과 방사이를 구분하는 문턱(Threshold)처럼, 문턱전압은 전류의 흐름이 변하는 전압의 임계점을 말한다. 여기서는 MOSFET을 동작하게 만드는 문턱 전압의 속성에 대해 알아보겠다. #========================================== 전류가 흐르는 MOSFET 강의 수위를 조절하는 댐, 문턱전압 ====================..

[ Nandflash ] 02. Channel, 드레인 전류의 변화

Channel, 드레인 전류의 변화 트랜지스터가 동작한다는 것은, 내부에서 캐리어가 흐른다는 뜻이다. 이때 캐리어는 반드시 채널을 지나야 정격전류가 되는데, 이 흐름은 외부전압인 드레인전압과 게이트전압에 의해 좌우된다. 여기서 드레인 전압은 채널에 있는 캐리어를 직접 끌어당기고 게이트전압은 채널 속은 잘 흐르도록 통로의 두께와 폭을 넓히는 역할을 한다. 그래서 이번에는 증가형 MOSFET의 채널을 매개체로 드레인 전류를 놓고, 드레인전압과 게이트 전압이 펼치는 삼각관계에 대해 알아보자. #================================================== 전류야, 그 길을 건너지마오 - 차단영역 ================================================..

[ Nandflash ] 01. Channel, MOSFET이라는 세상의 다리

Channel, MOSFET이라는 세상의 다리 MOSFET은 인간이 만든 생산품 중 가장 많이 팔린 제품이다. 하지만 이런 MOSFET도 초창기에는 주목을 받지 못했다. MOSFET의 트랜지스터 3개 단자 중 가장 중요한 역할을 하는 Gate 단자를 어떤 위치에, 어떻게 형성시키느냐가 관건이었기 때문이다. 이 문제를 적절히 극복함으로써 MOSFET(Metal Oxide Semiconductor FET)은 비로소 원조 트랜지스터인 BJT(Bipolar Junction Transistor)보다 성능과 집적 면에서 월등히 앞서게 되었다. 이렇게 산고의 고통을 겪은 Gate의 존재 이유는 무엇일까? 바로 Source와 Drain사이에 채널(Channel)이란 다리를 놓기 위함이다. 이 다리는 성격이 묘해서 좋아..

[ Nandflash ] 00. 낸드플래시의 기초, MOSFET

Nandflash Nandflash datsheet와 Nandflash driver source code를 기반으로 낸드플래시를 이해해보자 NAND flash = MOSFET + FG(floating gate) 본격적으로 낸드플래시를 설명하기 전에 DRAM과 플레시메모리(Flash Memory)의 차이에 관해 설명하겠다. 저장방식에 있어서 DRAM은 캐패시터에 저장하는 반면 플레시메모리는 플로팅게이트(Floating Gate:FG)라는 곳에 데이터를 저장한다. 따라서 DRAM은 휘발성, 플래시메모리는 비휘발성의 특징을 가지게 된다. MOSFET Metal - Oxide Semiconductor Field-Effect Transistor 금속-산화 반도체 전계 효과 트랜지스터 Basic NMOS의 구조와 ..

[ Embedded ] 13. 분해능(Resolution)

분해능 Resolving Power, Resolution Power, 분해능, 해상도 아주 작은 차이를 분별해내는 기기의 능력 렌즈와 같은 광학계의 결상 능력에서 해상도, 분해능, 해상력 의미 차이 해상도 : 동영상/이미지 등이 얼마나 자세하게 표현될 수 있는가의 척도 분해능 : 기기가 갖는 최대 능력 (가장 좋은 조건하에서의 해상력) 흔히, 분해능은 파장에 따라 달라짐 아주 짧은 파장을 쓰면 분해능을 높일 수 있다. ex) 전자현미경 해상력 : 주변여건에 따른 기기의 한계 분해능 :black_nib: 분해능 척도 판별 가능 최소 눈금 변화량 = (동작범위) / (눈금 수) 단위 눈금 당 신호 변화량 백분율 분해능(% 분해능) = [ (최소눈금단위 동작범위) / (전체 동작범위)] x 100% !일반적으..

[ Embedded ] 12. DAC

DAC Digitl-to-Analog Converter 디지털 이진 코드를 받아 아날로그 신호를 발생시키는 장치 ​ => n 비트 디지털 입력 신호에 대해 디코더에서 2n개의 아날로그 전압 기준신호를 발생 :black_nib: DAC 성능 표현 정정 석능 : DNL, INL, 단조증가성 동적 성능 : 글리치 에너지(Glitch Energy), SFDR(Supurious Free Dynamic Range), SNR(Signal to Noise Ratio), 유효 비트 수(Effiective Number of Bit)

[ Embedded ] 11. ADC

ADC와 DAC ADC : Analog to Digital Converter DAC : Digital to Analog Converter Sample Rate와 Bit Depth를 활용해서 DAC는 우리의 디지털데이터를 다시 아날로그 오디오로 변환합니다. 이것은 각 샘플 포인트를 보간법을 이용해서 전환시킵니다.(끝과 끝을 통해서 예측) 보통 176.4kHZ나 192kHZ와 같은 높은 Sapmle Rate 들이 샘플링 단계에서의 에러와 불일치함을 만들수 있습니다. 하지만 다운샘플링과정에서 보간하거나 재계산을 통해 이런 에러 들을 보정한다. 때문에 이런 에러들보다 중요한 핵심은 캡쳐하는 순간의 해상도이다. # Note 실제로 높은 Sample Rate에서 녹음되고 처리된 후 다운커버팅된 음원이 처음부터 낮은..

[ 개념 ] 29. Sorting In Java(feat. 사용자정의 객체 정렬)

> Sorting In Java 일반적으로 정렬은 가장 기본적인 알고리즘이기 때문에, 대부분의 프로그래밍 언어가 표준 라이브러리의 일부로 정렬을 제공한다. 따라서, 일반적인 상황에서 개발자가 직접 알고리즘을 구현할 경우는 많지 않다고 볼 수 있다. Java에서의 sorting을 알아본다. 기본 타입 데이터의 정렬 Arrays 클래스가 primitive 타입 데이터를 위한 정렬 메소드를 제공한다. int[] data = new int[capacity]; //data[0]에서 data[capacity-1]까지 데이터가 꽉 차있는 경우에는 다음과 같이 정렬한다. Arrays.sort(data); //배열이 꽉 차있지 않고 size개의 데이터만 있다면 다음과 같이 정렬한다. Arrays.sort(data, 0,..

[ 개념 ] 28. Priority Queue(우선순위 큐)

> 우선순위 큐 Priority queue 힙의 응용 : 우선순위 큐 최대 웅선순위 큐(maximum priority queue)는 다음의 두 가지 연산을 지원하는 자료구조이다. INSERT(x) : 새로운 원소 x를 삽입 EXTRACT_MAX() : 최대값을 삭제하고 반환 최소 우선순위 큐(minimum priority queu)는 EXTRACT-MAX 대신 EXTRACT-MIN을 지원하는 자료구조 MAX HEAP을 이용하여 최대 우선순위 큐를 구현 INSERT max heap의 형태로 원소들이 저장되어 있고, 15가 insert되는 경우 아래와 같은 과정을 거친다. complete binary tree를 만족하면서, max heap property를 만족하도록 만들어 준다. pseudo code He..