Title: ??FPGA????????
1?????????
- ????? ? ?
- ??? ???
- ?????????????
2??
- ???????????
- ??FPGA????????
- FPGA?????EDA???
3???????????
- ?????????????? ??
- ??????????
- ????32
- ????????????
- ????5
- ???????????????
4???????????
- ???????
- ????FPGA?????????????(HDL)??,???????????????,???
??FPGA????????EDA???????????,????FPGA?HDL?????????
??,????????????FPGA?????????????????????????
5???????
- ??? FPGA?????EDA???
- ??? ????????
- ??? ?????
- ??? ????? (?????????????)
6???????
- ??? ?????(ROM?RAM)
- ??? ??????? (?????????????)
- ??? ???????????
- ??? ??????
7??FPGA????????
-
- ??????????,?????????,?????????????????,???
????,??????????????????? -
- ?????FPGA?EDA?????IEEE?????????????????
???????????????????????????,??????,????? -
8- FPGA??
-
- FPGA(Field Programmable Array)
????????? - FPGA???????????,???????????????
- ??FPGA??????????,???????
9- HDL????????
- HDL??????,??????????EDA??,??HDL??????,??
?????????????????????????????????,????????????????
??,????????????????,??????????? - ???HDL?IEEE????,???VHDL ? Verilog ?
10?????????
1??????????????????? 2?????,????????,?????????????
????? 3???????,??????,?????????????????,??????????
?? 4????????????,???????????????????????? 5??
????????????????
11?????????
6??????,??????,???????????????????????? 7???????
,??????????????,??????????????????????????????,
???????? 8?????????,???????? ???????
12??? QUARTUS II?????EDA???
- ????
- ??QUARTUS II?????????
- ??QUARTUS II?VHDL????????
- ??FPGA??????
- ????
- ?QUARTUS II?????,??VHDL??????????2-1????
13QUARTUS II?????EDA?????
14QUARTUS II?????EDA?????
GW48 ??SOPC/EDA??????
15QUARTUS II?????EDA?????
- QUARTUSII??????
- Altera Quartus II ????????????????,?????
???????????????????(SOPC) ?????????Quartus II????
FPGA ? CPLD ?????????????Quartus II ??????4???
16QUARTUS II?????EDA?????
- ??Quartus II?EDA??????????
- 1?????
- ????????,???,???
- 2???????(???HDL??)
-
- 3??????
- ???? Cyclone EP1C31448
-
17QUARTUS II?????EDA?????
- 4???
- ??(erro)??,??????????
- ????(warning)
- 5???
- ???????,??????
-
18QUARTUS II?????EDA?????
- 6?????????????
-
- ???? (9?)
- ????????
- FPGA ??? ????(EDA???No.5)
- Pin1 PIO0 ??1
- Pin2 PIO1 ??2
- Pin11 PIO8 ???1
19??? ?????????
- ????
- ?????QUARTUS II???????????
- ??????????
- ??FPGA???????????
20??? ?????????
- ????
- ??Quartus II?????????????,??Altera???????????lmp_c
ounter,??????????lmp_counter?????? - ??Quartus II??????????,????2-4???,?????????????
- ??Quartus II??????74273???????????,????????????
- ??lmp_counter?2-4??????????????????,??????,???????
??????
21?????
22??? ?????
- ????
- 1??????????????
- 2?????????????
- ????
- ????????????????????,????????/???? ?
23??? ?????
- ????
- ????????????3-1???CLK???????C0???????S1..0?M????
??????????????????????? ?
G S1 S0 M ? ?
0 0 0 ?? ??
0 1 0 0 ????
0 1 0 1 ???????
0 0 1 0 ????
0 0 1 ???????
?? 1 1 ?? ??
24??? ?????
- ????
- ??????????????
- ??????????????
- ??????????????????
- ?????????????
- ????????8???????????
- ?????,??????????????
- ????
- ?Quartus II?,????8???????,???????
25??? ?????
- ????
- ?????Quartus II\Maxplus2?????????,??????
9???????????74181??/?????8????ALU?
26?9 ??????????
27??? ?????
?1 74181??????
28??? ?????
- ????????
- ?????9?12??????????????,?????9,???????
????Key9??(??JP8,6?????)???FPGA?????????????P26???
??26?????T1? - ?????????????????
- ?2???8????????????????????,????????????
????S3?S2?S1?S0?M,????????????,????????DR1A7..0
?DR2B7..0,???????????????
29??? ?????
?2 ??????????
30??? ???????1 lpm_rom(ROM)??
- ????
- ????lpm_rom?FPGA???ROM???
- ??lpm_rom?????
31??? ???????1 lpm_rom(ROM)??
- ????
- ALTERA?FPGA????????LPM (Library
Parameterized Modules)???????,????lpm_rom?lpm_ram_
io?lpm_fifo?lpm_ram_dq????????Quartus
II?,???????????????EAB?FPGA???????lpm_rom????CPU??
?????????? lpm_rom?????10???
32??? ???????1 lpm_rom(ROM)??
?10 lpm_rom????
- lpm_rom?3???
- clock??????
- q23..0lpm_rom?24??????
- address5..0lpm_rom?6??????
- ROM??????,???????????????
33??? ???????1 lpm_rom(ROM)??
- ROM???????
- ROM???????FPGA?????,????????????????
- ?Quartus II?,??????????2?
- (1)Memory Initialization File (.mif)
- (2)Hexadecimal (Intel-Format) File (.hex)
- ??mif/hex??,????????ROM?????,????????l
pm_rom???ROM??????????????ROM????????
34??? ???????1 lpm_rom(ROM)??
- ???
- ????ROM???,?ROM?????????????????????
??????,????,??RAM ?????,???????
35??? ???????2 lpm_ram_dq(RAM)??
- ????
- ????lpm_ram_dq?FPGA???RAM???
- ??lpm_ram_dq?????
- ????
- ?FPGA?????????EAB???????,lpm_ram_dq
???????LPM?????lpm_ram_dq?????11???
36??? ???????2 lpm_ram_dq(RAM)??
?11 lpm_ram_dq????
- lpm_ram_dq?5???
- data7..08??????
- wren?/????,????????,????????
- address7..0 ????????
- clock?/?????
- q7..0 lpm_rom?8???????
37??? ???????2 lpm_ram_dq(RAM)??
?12 lpm_ram_dq????
38??? ???????2 lpm_ram_dq(RAM)??
- ???
- ????RAM???,?RAM?????????????????????
??????,????,??RAM ?????,???????
39??? ???????
- ????
- ???????????????????
- ??????????????
- ????
- ??????????????????????????????,?????????
??????????????????????????????????????????????????
????????????????????????????????????4?D?????,???4?
????????T1T4????????????(EXEC)?
40??? ???????
- ??/??????????
- ??/???????????13??,
- S021MUX?2?1?????S00?,YA,?????S01?,YB,?
???? - CLK1??????,???????clock0?1Hz2MHz?
- RST??????,??????
?13 ??/??????????
41??? ???????
- ??/??????????
- ??????14???
- ??????,??RST??????????,????T1?T2?T3?T4?????
- ??????,?RST??????????,???????T1?T2?T3?T4?????
?14 ??/??????????
42??? ???????????
- ????
- ??????????????,?1???????????????
- ????????????????????????????????
43??? ???????????
- ????
- ?????????????????????????????
- ?????PC?????????????????,CPU????PC????
???????,????????????,??PC?????? - ?????????????????,?T4?????????????1???
?LOAD????????????????,?LOAD?????,?????data
???????CLR??????0?,?????,??????CLR?????,????????
??
44??? ????????2 ?????PC??????AR??
??????????????
45??? ???????????
- ?????AR(74273)??????SRAM???,???????????
?????PC???,?????????????????????????,????????????
? - ??????????????,?FPGA???????????BUSMUX??
???PC_B??????sel???,?PC_B????,??????sel?0?,?????
??????PC_B?????,??????sel?1?,????????????
46??? ??????
- ????
- ??????????
- ??????????
47??? ??????
- ????
- 1?????
- ??????????????????????,????????????????
??,???????????????????????????????????????????????
????????
????????
48??? ??????
- 2???????
- ???????????????????????????????,??????
?????????????????????????????????,???FPGA?????????
????,????????????????????????????????????,????????
???????,?????????
49??? ??????
?????????
50??? ??????
- ????
- ??????????????,??????????
- 1?????????????R0?
- 2??????????????????AR?
- 3?????R0????????????????
- 4?????????????????LED???
51??? ??????
??????????
52??? ??????
- ???
- 1????RAM??????,??????????????
- 2???????????????????
????????
53??! ????????! ??!