- 3
- 0
- 约4.04千字
- 约 7页
- 2018-12-31 发布于湖北
- 举报
图1 红色线 是 同步 clk
在输出端 cos_out 引脚,是cos1 的输出,cos1 是在时钟clk 上升沿时候的cos 输出,详细如图1 的右上角所示,该电路图是 quartus II 综合后,红色方
框是人为添加的。
在modelsim10.0c 中做 后仿真, cos 与 cos1 的波形变化是正确的, 而 cos1 至 cos_out 的变化出现了更大的延迟,并且伴有 毛刺的出现,求解答,
谢谢。
图3 是图2 的放大图,以数据831 为例,cos_out 在时钟clk 的上升沿之后,输出831 之前,出现了两个毛刺287 和319,每个毛刺持续时间大约是 1ns 。
从上升沿(500ns )至831 出现时刻(509 ns),共有9 ns 延迟,如图4 所示。
个人猜测:是不是由于cos_out 是输出端,布线延迟比较大?从而也因为受到了较多的干扰而出现毛刺?
在图4 后面是 程序的源代码。
1
图2 cos_out 输出端伴有 毛刺出现 (缩小图)
2
图3 cos_out 输出端伴有 毛刺出现 (放大图)
3
图4 9ns 延迟
4
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
ENTITY cont15 IS
PORT(clk,reset: in std_logic;
cos_out : out std_logic_vector(11 downto 0));
END cont15;
ARCHITECTURE counter1 OF cont15 IS
signal count : integer range 0 to 15 := 0;
signal tableout : std_logic_vector(11 downto 0):= 000000000000;
signal cos : std_logic_vector(11 downto 0):= 000000000000;
signal cos1 :std_logic_vector(11 downto 0):= 000000000000;
BEGIN
count_pro: PROCESS(clk,reset)
BEGIN
IF reset = 0 THEN
count = 0;
ELSIF clkevent and clk = 1THEN
IF (count = 14) THEN
count = 0 ;
ELSE
count = count + 1;
5
END IF;
end if;
end process;
lut_process:process(count)
begin
case count is
WHEN 0 = tableout = 000000000000;
WHEN 1 = tableout = 001100111111;
您可能关注的文档
最近下载
- 年产420吨锆废料回收项目可行性研究报告.docx
- 2025年加州驾照常考题库及答案.doc VIP
- 《现代汉语(下册语法部分)》PPT课件.ppt VIP
- 无人机测绘技术(微课版)03无人机测绘数据采集.pptx VIP
- 2025年房地产经纪人继承房产涉及的贷款问题处理专题试卷及解析.pdf VIP
- 2026年高考第一次模拟考试:地理一模突破卷02(新高考全国通用)(考试版).docx VIP
- 2025年互联网营销师绿色营销风险识别与管理专题试卷及解析.pdf VIP
- 2025年项目管理专业国际成本补偿合同汇率风险管理专题试卷及解析.pdf VIP
- 2025年拍卖师着装中的色彩搭配技巧与禁忌专题试卷及解析.pdf VIP
- 2025年无人机驾驶员执照敏感区域(如核设施)空域管控专题试卷及解析.pdf VIP
原创力文档

文档评论(0)