PXA255-FPGA 장비 개요 및 실습 Lecture #9
강의 순서 PXA255-FPGA BLOCK DIAGRAM PXA255-FPGA SPEC PXA255-FPGA 사용 방법 PXA255-FPGA 예제 실습(LED) 모바일컴퓨터특강
PXA255-FPGA BLOCK DIAGRAM 모바일컴퓨터특강
PXA255-FPGA SPEC PXA255-FPGA BOARD 사양 FPGA Altera cyclone EP1C12(249 pins) LOGIC ELEMENTS 12,060 LOGIC GATE 240000 Logic Gate RAM BIT 239,616 Bit 외부 CPU PXA255 외부 INTERFACE 32 BIT address/data bus 입력 I/O PUSH S/W, DIP S/W, IMAGE SENSOR 출력 I/O TEXT LCD, LED, 7SEGMENT, BUZZER, DOTMATRIX, VGA 모바일컴퓨터특강
VGA TEXT-LCD I/O 100PIN FPGA JTAG PORT AD/DA PORT PUSH S/W LED EXTERN I/O STEP MOTOR CAMERA CONN DOT BUZZER DIP S/W 7-SEG 모바일컴퓨터특강
7-SEG,BUZZER,CAMERA,MOTOR, PXA255-FPGA 동작방법 (1) PXA255-PRO보드와 PXA255-FPGA보드와의 연동방법 PXA255 Main Board FPGA I/O 주변장치 LED,FND,DOT MATRIX,LCD, 7-SEG,BUZZER,CAMERA,MOTOR, SENSOR(온도,기울기,조도) ADDRESS BUS CONTORL SIGNAL DATA BUS PXA255-FPGA4 보드 모바일컴퓨터특강
PXA255-FPGA 동작방법 (2) PXA255 SRAM Write timing Diagram(PXA255 DATASHEET) 모바일컴퓨터특강
PXA255-FPGA 동작방법 (3) PXA255 memory map 모바일컴퓨터특강
PXA255-FPGA 동작방법 (4) 디바이스 메모리맵 : 모바일컴퓨터특강
7-SEG,BUZZER,CAMERA,MOTOR, PXA255-FPGA 동작방법 (5) PXA255-FPGA보드 단독 동작 모드 FPGA I/O 주변장치 LED,FND,DOT MATRIX,LCD, 7-SEG,BUZZER,CAMERA,MOTOR, SENSOR(온도,기울기,조도) PXA255-FPGA4 보드 POWER JACK 모바일컴퓨터특강
PXA255-FPGA 동작방법 (6) DIP SW을 이용한 동작 모드 선택 PXA255-PRO 보드와 PXA255-FPGA보드와의 연동 방법 PXA255-FPGA보드 단독 동작 모드 모바일컴퓨터특강
PXA255-FPGA 예제 프로그램(LED) 개요 system 요구사항 PXA255-FPGA를 이용하여 LED에 대한 동작을 이해하고 디바이스 드라이버를 작성하여 LED를 제어 한다 system 요구사항 Hardware 요구사항 PXA255-PRO3 PXA255-FPGA ByteBlaster Interface Cable Software 요구사항 Quartus II V2.2이상 사용 Hardware Description Language VHDL 모바일컴퓨터특강
PXA255-FPGA 예제 프로그램(LED) FPGA - LED 회로도 구성 모바일컴퓨터특강
PXA255-FPGA 예제 프로그램(LED) 모바일컴퓨터특강
Quartus II Project 파일 생성 (1) New Project Wizard를 통한 Quartus Project 생성하기 File 메뉴에서 New Project Wizard를 실행하여 새로운 프로젝트를 만들어보자. 모바일컴퓨터특강
Quartus II Project 파일 생성 (2) New Project Wizard ① Project를 설치할 경로 와 프로젝트의 이름과 top-level entity 이름을 지정하는 부분이 있다 모바일컴퓨터특강
Quartus II Project 파일 생성 (3) New Project Wizard ② 오른쪽의 그림은 다음 단계인 설계된 파일이 있으면 추가 하는 단계 추가할 파일이 프로젝트 디렉토리에 있다면 [ADD ALL] 버튼을 클릭하면 모두 추가 [...] 버튼을 클릭하여 그림과 같이 4개의 파일을 추가 [Next]버튼을 눌러 다음 설정으로 이동 모바일컴퓨터특강
Quartus II Project 파일 생성 (4) New Project Wizard ③ EDA Tool 에 대한 설정을 하는 부분 Third party EDA tool을 사용한다면 설정하고, 사용하지 않는다면 [Next]버튼을 눌러 다음 설정으로 이동 모바일컴퓨터특강
Quartus II Project 파일 생성 (5) New Project Wizard ④ Device Family를 설정하는 부분 PXA255-FPGA보드는 Cyclone을 사용하고 있으므로 Cyclone으로 설정 모바일컴퓨터특강
Quartus II Project 파일 생성 (6) New Project Wizard ⑤ PXA255-FPGA에는 EP1C12Q240C8을 사용하고 있으므로 해당 Device를 선택 오른쪽 메뉴의 Filter사용 하면 쉽게 선택할 수 있다 모바일컴퓨터특강
Quartus II Project 파일 생성 (7) New Project Wizard ⑥ 지금까지 설정을 확인하는 단계 프로젝트경로와 프로젝트 이름, top-level design entity 이름, 추가한 파일의 개수를 확인 모바일컴퓨터특강
Quartus II Project 파일 생성 (8) 모바일컴퓨터특강
VHDL 파일 생성 (1) led8.vhd iom_mode.vhd mux_iom.vhd FPGA_MODE=“00”일 때에 단독모드로 LED를 회전시키면 깜박이는 동작을 수행하는 component를 구현 iom_mode.vhd FPGA_MODE=“01”일 때에 CPU 인터페이스 모드로 CPU의 제어 및 데이터를 받아 LED를 동작시키는 component를 구현 mux_iom.vhd FPGA_MODE 값에 따라 단독 모드 또는 CPU 인터페이스 모드로 동작하도록 선택하는 MUX 기능을 수행하는 component를 구현 모바일컴퓨터특강
VHDL 파일 생성 (2) io_top.bdf 앞에서 VHDL description으로 정의한 component에 대해 symbol을 생성 Top-level entity를 block schematic으로 정의한다. 모바일컴퓨터특강
VHDL Compilation (1) Pin Assignment 우선 compilation을 수행하여 pin 정보를 수집한다 Pin Assign File 수정 io_top.qsf 파일을 열어서 옆 그림과 같이 CHIP (io_top) 섹션에 핀 매핑에 대한 정보를 수정 io_top.qsf 파일을 직접수정하면 보다 손쉽게 매핑 할 수 있다 Pin Assianment 메뉴 사용 GUI 방식으로 pin 할당을 수행 CHIP(io_top) { LED[0] : LOCATION = Pin_1; LED[1] : LOCATION = Pin_2; LED[2] : LOCATION = Pin_3; LED[3] : LOCATION = Pin_4; LED[4] : LOCATION = Pin_5; LED[5] : LOCATION = Pin_6; LED[6] : LOCATION = Pin_7; LED[7] : LOCATION = Pin_8; MAIN_CLK1 : LOCATION = Pin_29; ...... 이하 계속 ....... 모바일컴퓨터특강
VHDL Compilation (2) 사용하지 않는 핀들에 대한 설정 Device 설정 창에서 Device & Pin Options을 선택 모바일컴퓨터특강
VHDL Compilation (3) Unused Pin에 대한 설정 Reserve all unused pins에서 As Input, tri stated를 선택 외부에 아무런 영향을 주지 않기 위함 모바일컴퓨터특강
VHDL Compilation (4) Configuration에 대한 설정 그림과 같이 Configuration scheme와 device를 설정 모바일컴퓨터특강
VHDL Compilation (5) 기타 설정 General 탭에서 Auto-restart configuration after error을 선택 FPGA에서 에러가 발생하면 자동으로 다시 Configuration하게 설정 모바일컴퓨터특강
VHDL Compilation (6) Compilation 지금까지의 설정이 정상적으로 이루어졌다면 Processing 메뉴에서 Start Compilation을 실행 컴파일이 완료되면 ‘Full compilation was successful‘ 이라는 메시지를 보여주며 컴파일이 끝나게 된다 모바일컴퓨터특강
FPGA Configuration (1) Configuration Programmer 실행 - EPC2에 다운로드 하거나 FPGA에 Configuration 하기 위해서 Programmer를 실행 모바일컴퓨터특강
FPGA Configuration (2) Configuration 파일 불러오기 Byteblaster 케이블이 JTAG 포트에 연결된 상태에서 [Auto Detect] 를 하면 EPC2와 EP1C6 두 개의 장치를 검출 <none>를 더블 클릭하여 EPC2에는 io_top.pof 파일을, EP1C6에는 io_top.sof파일을 설정한다 모바일컴퓨터특강
FPGA Configuration (3) Configuration Program/Configure에 체크 옵션에 체크를 한다 [Start]버튼을 클릭하면 체크한 항목에 대해서만 Download 및 Configuration을 수행한다 [Start]버튼을 클릭하여 실행한다. 모바일컴퓨터특강