名称:多种的数字信号源的设计Verilog代码Quartus仿真
软件:Quartus
语言:Verilog
代码功能:
多种的数字信号源的设计
2.能步进预置不同信号源的输出,并指示输出波形的类型;
3.信号源頻率为1kHz,峰峰值为10V;
4.方波的占空比为0.5;
5.锯齿波的下降时间为0.1mS;
6.三角波为对称三角波;
7.能突测并显示输出波形的类型。
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
演示视频:
设计文档:
1. 工程文件
2. 程序文件
3. 程序编译
4. RTL图
5. 仿真图
Testbench
整体仿真图
波形产生模块仿真图
波形类型选择模块仿真图
显示模块仿真图
部分代码展示:
//波形产生模块 module carrier_wave( input clk, input rst, output [7:0] triangular_wave,//三角波 output [7:0] sawtooth_wave,//锯齿波 output [7:0] square_wave,//方波 output [7:0] sin_wave//正弦波 ); reg [7:0] sin_valu=8'd0; reg [4:0] count=5'd0; //波形地址计数 always @(posedge clk) begin if(rst) count<=0; else if(count==5'b11111)//计数到11111回到0 count<=5'b00000;//0 else count<=count+5'b00001; //计数 end //32个采样点的正弦波 always @(posedge clk) begin if(rst) sin_valu<=8'b10000000; else case (count) 5'b00000:sin_valu<=8'b10000000; 5'b00001:sin_valu<=8'b10011000; 5'b00010:sin_valu<=8'b10110000; 5'b00011:sin_valu<=8'b11000111; 5'b00100:sin_valu<=8'b11011010; 5'b00101:sin_valu<=8'b11101010; 5'b00110:sin_valu<=8'b11110110; 5'b00111:sin_valu<=8'b11111101; 5'b01000:sin_valu<=8'b11111111; 5'b01001:sin_valu<=8'b11111101; 5'b01010:sin_valu<=8'b11110110; 5'b01011:sin_valu<=8'b11101010; 5'b01100:sin_valu<=8'b11011010; 5'b01101:sin_valu<=8'b11000111; 5'b01110:sin_valu<=8'b10110001; 5'b01111:sin_valu<=8'b10011001; 5'b10000:sin_valu<=8'b10000000; 5'b10001:sin_valu<=8'b01100111; 5'b10010:sin_valu<=8'b01001111; 5'b10011:sin_valu<=8'b00111001; 5'b10100:sin_valu<=8'b00100101; 5'b10101:sin_valu<=8'b00010101; 5'b10110:sin_valu<=8'b00001001; 5'b10111:sin_valu<=8'b00000010; 5'b11000:sin_valu<=8'b00000000; 5'b11001:sin_valu<=8'b00000010; 5'b11010:sin_valu<=8'b00001001; 5'b11011:sin_valu<=8'b00010101; 5'b11100:sin_valu<=8'b00100101; 5'b11101:sin_valu<=8'b00111000; 5'b11110:sin_valu<=8'b01001110; 5'b11111:sin_valu<=8'b01100110; default:sin_valu<=8'b11011010; endcase end
点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=1008
阅读全文
467