道第7章电子系统设计实践(二) EDA技术与应用>课程讲义 肥工业大学彭良清 上一章 下一章
第7章 电子系统设计实践(二) 课程讲义 下一章 合肥工业大学 彭良清 上一章
本章内容 1.正弦信号发生器 2.8位硬件乘法器设让 3.乐曲硬件演奏电路设计
本章内容 1. 正弦信号发生器 2. 8位硬件乘法器设计 3. 乐曲硬件演奏电路设计
正弦信号发生器 令目的:学会使用LPM模块,ROM模块。 原理:如何用FPGA硬件实现? Y=sin()X: 0-2TT 有2个方法: 1.台劳级数展开,sin运算变成乘加运算, 硬件实现乘加运算。 查表法。硬件查表
正弦信号发生器 ❖ 目的:学会使用LPM模块,ROM模块。 ❖ 原理:如何用FPGA硬件实现? Y=sin(x) x: 0~2π 有2个方法: 1. 台劳级数展开,sin运算 变成 乘加运算, 硬件实现 乘加 运算。 2. 查表法。硬件查表
查表法的正弦信号发生器 必须先解决的2个问题: 1.在FPGA中如何存储正弦函数表? 使用 LPM ROM宏模块 2.如何得到y=s函数的关系表 用高级语言程序计算 7用exce表计算(最为筒单)
查表法的正弦信号发生器 必须先解决的2个问题: 1. 在FPGA中如何存储 正弦函数表? 使用LPM_ROM宏模块 2. 如何得到 y=sinx 函数的关系表 用高级语言程序计算 用excel表计算(最为简单)
正弦信号发生器:设计步骤 1.用exce计算y=sinx的数值 2.编辑*mif文件,保存步骤一计算的结果 3.定制用于存储mf文件的 LPM ROM模块 4.编写对 LPM ROM模块进行查表的代码 5.编译、仿真测试 6.完毕
正弦信号发生器:设计步骤 1. 用excel计算y=sinx的数值。 2. 编辑*.mif文件,保存步骤一计算的结果 3. 定制用于存储mif文件的LPM_ROM模块 4. 编写对LPM_ROM模块进行查表的代码 5. 编译、仿真测试 6. 完毕
用 excel计算y=sinx的数值 X的取值范围,变化步长(分辨率) X(0-63)A=x2*3.1415926/64B=S|NA) C=(1+B1)*127.5 输入 折算的角度(弧度)正弦值 折算0~255量程数 00 0 0 127 01 0.098172688 0.841470985234 02 0.196349538 0.909297427243 03 0.294518063 0.1411200145 FE 6.086835663 0.73918069733 FF 6.184879313 0.1673557 计算过程参见: 弦数据的 EXCEL
用excel计算y=sinx的数值 ❖ X的取值范围,变化步长(分辨率) X(0~63) 输入 A=x*2*3.1415926/64 折算的角度(弧度) B=SIN(A) 正弦值 C=(1+B1)*127.5 折算0~255量程数 00 0 0 127 01 0.098172688 0.841470985 234 02 0.196349538 0.909297427 243 03 0.294518063 0.141120008 145 ········· FE 6.086835663 -0.739180697 33 FF 6.184879313 0.1673557 148 计算过程参见: 正弦数据的EXCEL表
m文件格式 1. DEPTH= 64; Memory depth and width are required 2. WIDTH E 8: Enter a decimal number % 3. ADDRESS RADIX HEX: Address and value radixes are optional % 4. DATA RADIX HEX: Enter BIN, DEC, HEX, or OCT: unless 5 otherwise specified, radixes HEX 6.- Specify values for addresses, which can be single address or range Z. CONTENT BEGIN 9.[0.F 3FFF, Range--Every address from 0 to F=3FFF % 10. 6 F: %o Single address-Address 6=F% 11 FE5; Range starting from specific address--% 12. END; Addr[8= F Addr[9 E, AddrTAJ=5 %0
mif文件格式 1. DEPTH = 64; % Memory depth and width are required % 2. WIDTH = 8; % Enter a decimal number % 3. ADDRESS_RADIX = HEX;% Address and value radixes are optional % 4. DATA_RADIX = HEX; % Enter BIN, DEC, HEX, or OCT; unless % 5. % otherwise specified, radixes = HEX % 6. -- Specify values for addresses, which can be single address or range 7. CONTENT 8. BEGIN 9. [0..F]: 3FFF; % Range--Every address from 0 to F = 3FFF % 10. 6 : F; % Single address--Address 6 = F % 11. 8 : F E 5; % Range starting from specific address-- % 12. END ; % Addr[8] = F, Addr[9] = E, Addr[A] = 5 %
本例中的m文件的内容 DEPTH= 64 2 WIDTH= 8 ADDRESS RADXXE DEC HEX DATA RADⅨ=DEC -HEX CONTENT 56789 BEGIN 0:127 1:234 2:243 3:145; 11 4:31 5:5 6:91 14 7:21 15 8:253; 17 61:4; 62:33 63:148 详细参见 END P196E×712S| NDATA
本例中的mif文件的内容 1. DEPTH = 64; 2. WIDTH = 8; 3. ADDRESS_RADIX = DEC; -- HEX 4. DATA_RADIX = DEC; --HEX 5. CONTENT 6. BEGIN 7. 0: 127; 8. 1: 234; 9. 2: 243; 10. 3: 145; 11. 4: 31; 12. 5: 5; 13. 6: 91; 14. 7: 211; 15. 8: 253; 16. ……… 17. 61: 4; 18. 62: 33; 19. 63: 148; 20. END ; 详细参见: P196_EX7_12_SINDATA
Mf文件的2种编辑方法 1.对话象下输入 FILE->NEW->OTHER FILES-MEMORY INITIALIZATION FILE tus Il-[Mifl. mif] Edit View Project Assignments Processing Tools Window Help 回舀荔。 oject Navigat Ax Mifl. mif Entity Addr+0+1+2+3+4+5+6+7 ompilati 8 16 3 A40 0 000 000 00000000 0 0 2.任何文本编瓣器直接输入,要注意格式
Mif文件的2种编辑方法 1. 对话窗下输入 FILE->NEW->OTHER FILES-MEMORY INITIALIZATION FILE 2. 任何 文本编辑器 直接输入,要注意格式
定制用于存储m文件的 LPM ROM模块 冷进入: Tools-> MegaWizard Plug- n Manager Megawizard Plug-In Manager [page 2al Which megafunction would you like to customize? Which device family will you be Select a megafunction from the list below using? 日 Installed Plug-Ins Which type of output file do you want to create? Altera SOPC Builder HDL arithmetic C VHDL c Verilog HDL 中 memory compiler What riame do you want for the output file Browse CAM D: \pldinside \3dtest LVDS cyclone\ FIFO RAM: 1-PORT RAM: 2-PORT RAM: 3-PORT I Return to this page for another create operation Note:T。 compile as ll soft ur design files must be in the project directory. in the global user ROM: 2-PORT fied in the Options dialog box [Tools menu or a user Shift register [RAM-based] library specified in the User Libraries page of the Settings dialog box (Assignments menu). arallel Flash Loader Your current user library directories are: Signal ap ll Logic Analyzer Cance!」_」」mi AA
定制用于存储mif文件的 LPM_ROM模块 ❖ 进入:Tools->MegaWizard Plug-In Manager