[논리회로설계실험]VHDL을 통해 구현한 RAM
- 최초 등록일
- 2021.06.26
- 최종 저작일
- 2020.10
- 15페이지/
MS 워드
- 가격 2,000원
![할인쿠폰받기](/images/v4/document/ico_det_coupon.gif)
소개글
"[논리회로설계실험]VHDL을 통해 구현한 RAM"에 대한 내용입니다.
목차
1. 목적(Purpose)
2. 배경이론(Background)
1) ROM (read only memory)
2) RAM(Random access memory)
3) 배열과 type casting
4) 이번 실습에서 쓰이는 알고리즘
5) Reference 및 확장방향
3. Source & Results
1) VHDL Source
2) TestBench Source
3) Result wave
4. Result analysis
1) Time table
5. Discussion
1) 예측과 실제 실험 결과 대조 분석
2) Algorithm 설명 및 이해
3) 기타
본문내용
1.목적(Purpose)
이번실습은 ROM과 RAM의 차이에 대해서 알고, 실습으로는 RAM을 설계하는 실습이다. 이전에 배웠던 flipflop을 사용하여, RAM을 설계하고, 추가적으로 배열을 선언하는 방법, 그리고 type casting을 하는 방법들을 배워보고, 자신이 원하는 자료형으로 데이터 값들을 바꿔주는 방법에 대해서도 알아본다. 구현 방식은 RAM을 설계한 후, 입력값으로, 주소값(addr), 데이터값(di), 그리고 모드(we)값을 받아, we값이 0일 때 read, 1일 때 write가 되어 출력값이 나오는 방식으로 설계하여본다.
2. 배경이론(Background)
1)ROM (read only memory)
전원이 꺼져도, 정보를 저장하는 메모리로, n개의 입력변수에 2^n개의 출력단자를 가지는 decoder로 구성되며, 데이터를 읽어들일수는 있지만, 바꾸지는 못한다. 출력단자로 들어온 입력값을 주소값으로 인식하여, ROM상에 저장된 위치를 주소값으로 찾아 저장된 데이터를 출력으로 내보내는 방식이다. 아래의 그림은 ROM의 모식도를 나타내었다. Enable이 1이고 Clk이 바뀔때마다, 4bit의 주소값이 들어와, ram안에서 주소값을 이용하여 해당하는 위치의 데이터값을 출력으로 내보내는 회로이다.
<중 략>
2)Algorithm 설명 및 이해
이번 실습에서는 flipflop을 이용한 ram을 설계해보았다. Type구문을 사용하여 ram에 배열을 만들고, 그 안에 값들의 위치를 주소값으로 지정하여, 데이터를 저장하거나, 불러오는 방식으로 설계하였다. Conv_integer을 이용하여 2진수로 들어온 주소값을 정수형으로 변환한뒤, ram에서 지정된 위치를 찾는 방식으로 코드를 작성하였고, We 변수를 이용하여 데이터를 read/write로 제어하였다. 데이터를 write(저장)할때는, we=1로 모드를 지정하여, 입력된 주소값을 통해, integer로 변환한후, ram배열에 지정된 위치에 데이터값을 넣어주었고, we=0일때는 read모드로, 지정된 주소값의 위치의 데이터값을 출력으로 내보내었다.
참고 자료
https://www.tutorialspoint.com/computer_fundamentals/computer_rom.htm - ROM
https://en.wikipedia.org/wiki/Random-access_memory -RAM
http://www.bloter.net/archives/230516 - 저장장치
fundamentals of logic design, Charles, Larry L Kinney 7th