项目名称
Signal Tap ii逻辑分析仪的使用
具体要求
生成三角波并在Signal Tap ii中进行观察
设计说明
1.三角波的生成
采用sin3e工具生成三角波的mif文件,B是定义的数据位宽,Base是数据格式,采用16位数据格式,回车键就可以生成mif文件。
2.生成rom ip核, 数据位宽选择8位,深度选择256,选择生成的mif文件,一般将mif文件放在工程文件夹下。
3.对生成的ip核进行仿真
`timescale 1ns/1ns
module my_rom_tb;
reg [7:0] address;
reg clock;
wire [7:0] q;
my_rom my_rom(
.address(address),
.clock(clock),
.q(q)
);
initial clock=0;
always #10 clock=~clock;
integer i;
initial begin
address=0;
for(i=0;i<2550;i=i+1)//10个正弦波
begin
@(posedge clock)
address=i;
end
#200;
$stop;
end
endmodule
点击address,i和q右键,在format中将格式改为analog模拟量,i一直增加到2550,rom中地址从0-255变化,并且0-255的地址中正好对应一个正弦波。
3.Signal Tap ii逻辑分析仪的使用
对顶层模块进行设计
module rom_top(
input clk,
input rst_n,
output [7:0]q
);
reg [7:0] add;
my_rom my_rom(
.address(add),
.clock(clk),
.q(q)
);
always@(posedge clk or negedge rst_n)
if(!rst_n)
add<=0;
else
add<=add+1;
endmodule
分频引脚之后进行全编译,在quartus界面中点击file,选中new,打开signaltap ii logic analyzer file,打开工具界面。
signal configure中clock为采样时钟,点击后面的三个小点按钮,将Filter中的选项改为pins:all,点击list,将clk进行添加,这里直接用系统时钟进行采样。设置采样深度,为4k。(10个正弦波2550)
在setup空白处双击,选择需要抓取的数据。在hardware中选择usb-blaster。然后进行保存。
添加完之后需要对工程进行全编译。将设计下载到开发板中,打开保存的.stp格式文件,第一个按钮为单次采样,第二个按钮为连续采样,点击连续采样。
右键点击q和add,在总线显示格式中改为线状显示。