공부방/Verilog_노진호교수님_서울기술교육센터_필기

240528_ 0-->10 UPCOUNTER

맘스터치보단파파이스 2024. 5. 28. 16:52

CISC, RISC, X86

-->RISC 중 가장 인기많은 : ARM

핸드폰 ARM A시리즈

CISC VS RISC 

Complex Instruction Set Computer VS Reduced Instruction Set Computer

 

Instruction Set : 명령어 모음. 어셈블리어. (머신코드를 사람이 이해할 수 있는 언어로)

윈도우 어플리케이션 : C#

옛날 어플리케이션: MFC

애플 CPU : M1 M2 ==> ARM CPU

CISC : 어셈블리어가 많다.

RISC : CISC에서 중복된다고 생각되는 명령어들을 하나로 통합.

RISC : 컴파일을 해보면 좀 길긴 하다. CISC 성능이 더 좋았지만 지금은 서로 비슷비슷하다. 그리고 RICS가 슬슬 역전하고 있다. 애플 M시리즈 : 저전력, 열 덜나고, 성능은 좋아졌다. 

명령어 자주쓰는거만 묶어서 만든게 RISC (CISC 20%의 명령어가 80% 이상의 일을 처리하더라)

RISC의 장점 : 적은 수의 명령어로 동작. --> 저전력인데 가격이 저렴하다.

RISC의 단점 : 명령어 한개로 끝날게 그 명령어가 없기 때문에 그 명령어를 조합하여 기능을 만든다. 그래서 소프트웨어가 복잡해진다.

 

애니악. 첫 컴퓨터

폰 노이만 구조

폰 노이만 구조: INPUT, OUTPUT 분리하고 MEMORY에 동작 프로그램을 돌리자 = RAM

폰노이만 : 동작하는 RAM 이 한개 ( 범용 컴퓨터 )

하버드    : 동작하는 RAM 이 두개. 동작 RAM과 데이터 RAM 두가지.  

 

프로그램 메모리 --> Instruction momory = program memory

 

임베디드용, TV, 냉장고 등등 하버드구조인 이유 : 

범용컴퓨터는 온갖기능을 다 쓰지만 임베디드는 특정한 기능만을 수행한다.  --> 업데이트가 많이 힘들다.

 

범용컴퓨터는 어떠한 프로그램을 올리는지에 따라 기능이 달라진다.

보조기억장치. 하드웨어, 하드디스크가 필요하다. --> 범용.

 

임베디드제품들은 하드웨어가 거의 없다. 가끔 있다면 데이터베이스를 위한 하드디스크. 하드디스크가 있더라도 제품의 기능 전용으로 나온거다.

 

하드디스크 : FDD, HDD, SSD

 

폰 노이만 구조는 RAM 하나로 돌려서 외부메모리가 필요하다. HDD, SSD Hard-disk drive  Solid-state drive

외장메모리에 있는 코드를 RAM에 올리는 과정 : LOADING

 

LOADING : 프로그램과 리소스를 보조기억장치에서 주기억장치로 불러들이는 과정.

주기억장치에서 DATA와 INSTRUCTION을 수행한다.

 

하버드구조는 임베디드에서 많이 사용하다보니 ROM, Flash Memory : Program memory. --> 외장메모리처럼 사용.

RAM : Random Access Memory.

어떠한 공간에 랜덤으로 접근이 가능함.

천공카드와 자기테이프는 Random access가 불가능하다.

 

만약 RAM 없이 프로그램을 돌릴 수 있을까??? 엄청 느려진다.

시간이 이만큼 느려진다.

  • 접근 시간 증가: 특정 데이터를 얻기 위해서는 모든 이전 데이터를 거쳐야 하므로, 접근 시간이 선형적으로 증가합니다. 예를 들어, 1000번째 데이터에 접근하려면 999개의 데이터를 읽어야 합니다.
  • 병목 현상: 순차 접근은 병목 현상을 유발하여 CPU가 메모리 데이터를 기다리는 시간이 크게 증가합니다.
  • 캐시 효율 저하: 캐시 메모리는 데이터의 지역성을 활용해 성능을 향상시키는데, 순차 접근은 이러한 최적화를 방해합니다.

결국,

  • RAM이 랜덤 액세스인 경우: 1000번 위치의 데이터를 읽는 데 20ns가 걸린다면,
  • 순차 접근인 경우: 1000번 위치의 데이터를 읽는 데 1000×20𝑛𝑠=20,000𝑛𝑠가 걸립니다.

수업시간에서 구현할 구조 : 하버드 , RISC-V 구현.

<<RISC-V>>

OPEN SOURCE, The Free and Open RISC Instruction set Architecture. --> ISA

 

수업의 최종 목표

Instrucion Memory (ROM) -- Cotril unit, Data path --Data Memory ( RAM )

 

차근차근 만들어보자.

A변수에 0~9까지 카운트 하는 시스템 설계.

AsrcMuxSel 에 어떤신호를 주느냐에 따라서 동작시킬 수 있다.

 

STATE에 따른 ASrcMuxSel, Aload, OutBufSel 에 따라 어떠한 값이 출력되는지 확인.

동작하게 하는 애들은 ASrcMuxSel, Aload, OutBufSel 이므로 이에 따른 ASM을 확인한다. Alt 10 이 참 or 거짓 될 때 까지.

 

En(Load) 가 1일 때 CLK 올 때 까지 Regester 에서 1 이 대기한다.

특정 기능만 되는 프로세서 Dedicated Processor

'공부방 > Verilog_노진호교수님_서울기술교육센터_필기' 카테고리의 다른 글

240530_ CPU 첫 발자국 RISC-V 기능 추가중  (0) 2024.05.30
240529 counter_ cpu 걸음마시작  (0) 2024.05.29
240524 FIFO+UART  (0) 2024.05.24
240523 FIFO  (0) 2024.05.23
240522_ BRAM  (0) 2024.05.22