当前位置: 首页 > news >正文

班级动态网站怎么做/2023年4 5月份疫情结束吗

班级动态网站怎么做,2023年4 5月份疫情结束吗,手机网站淘宝客怎么做,c语言做项目网站2013-06-23 20:15:47 ISE综合后可以看到RTL Schematic,但我们知道在RTL编码时,要经常问自己一个问题“我写的这段代码会综合成什么样的电路呢”。对于一个简单的设计,比如一个触发器,综合后的RTL电路可能只有一个instance&#xf…

2013-06-23 20:15:47

ISE综合后可以看到RTL Schematic,但我们知道在RTL编码时,要经常问自己一个问题“我写的这段代码会综合成什么样的电路呢”。对于一个简单的设计,比如一个触发器,综合后的RTL电路可能只有一个instance,就是触发器,很直观。但对于一个比较大的设计,RTL Schematic就比较复杂,包含了很多instance,怎么知道RTL Schematic中的instance与哪段代码对应呢,也就是如何找到感兴趣的instance在RTL代码中的definition?

这个问题一直困扰了我很久,最近发现在ISE的RTL Schematic以及planahead的RTL Schematic都可以解决这个问题。

下面以一个异步FIFO为例,说明如何找到RTL Schematic中的instance对应的代码。

在ISE下:

代码:

 1 module asynchronous_fifo1(
 2                                 wrst_n,
 3                                 wclk,
 4                                 winc,
 5                                 wdata,
 6                                 wfull,
 7                                 
 8                                 rrst_n,
 9                                 rclk,
10                                 rinc,
11                                 rdata,
12                                 rempty
13                                 );
14                                 
15 parameter DATASIZE = 8;  //FIFO中数据宽度
16 parameter ADDRSIZE = 4;     //FIFO地址宽度                
17 
18 input wrst_n;
19 input wclk;
20 input winc;
21 input [DATASIZE-1 : 0] wdata;
22 output wfull;
23 
24 input rrst_n;
25 input rclk;
26 input rinc;
27 output [DATASIZE-1 : 0] rdata;
28 output rempty;
29 
30 
31 wire [ADDRSIZE-1 : 0] waddr;
32 wire [ADDRSIZE : 0] wptr;
33 wire [ADDRSIZE : 0] rq2_wptr;
34 
35 wire [ADDRSIZE-1 : 0] raddr;
36 wire [ADDRSIZE : 0] rptr;
37 wire [ADDRSIZE : 0] wq2_rptr;
38 
39 wire wea;
40 
41 //向RAM中写数据或从中读数据
42 assign wea = winc & (!wfull);
43 
44 fifo_mem fifo_mem_u (
45   .clka(wclk), // input clka
46   .wea(wea), // input [0 : 0] wea
47   .addra(waddr), // input [3 : 0] addra
48   .dina(wdata), // input [7 : 0] dina
49   .clkb(rclk), // input clkb
50   .addrb(raddr), // input [3 : 0] addrb
51   .doutb(rdata) // output [7 : 0] doutb
52 );
53 
54 //产生写地址waddr、写指针wptr、满信号full
55 wptr_full #(ADDRSIZE) wptr_full_u (
56     .wrst_n(wrst_n), 
57     .wclk(wclk), 
58     .winc(winc), 
59     .wq2_rptr(wq2_rptr), 
60     .wfull(wfull), 
61     .waddr(waddr), 
62     .wptr(wptr)
63     );
64      
65 //产生读地址raddr、读指针rptr、空信号empty     
66 rptr_empty #(ADDRSIZE) rptr_empty_u (
67     .rrst_n(rrst_n), 
68     .rclk(rclk), 
69     .rinc(rinc), 
70     .rq2_wptr(rq2_wptr), 
71     .rempty(rempty), 
72     .raddr(raddr), 
73     .rptr(rptr)
74     );
75      
76 //两个时钟域时间的接口,将读时钟域下的rptr同步到写时钟域,得到wq2_rptr
77 sync_r2w #(ADDRSIZE) sync_r2w_u (
78     .wrst_n(wrst_n), 
79     .wclk(wclk), 
80     .rptr(rptr), 
81     .wq2_rptr(wq2_rptr)
82     );
83      
84 //两个时钟域时间的接口,将写时钟域下的wptr同步到读时钟域,得到rq2_wptr     
85 sync_w2r #(ADDRSIZE) sync_w2r_u (
86     .rrst_n(rrst_n), 
87     .rclk(rclk), 
88     .wptr(wptr), 
89     .rq2_wptr(rq2_wptr)
90     );
91      
92 endmodule

关于FIFO的全部代码,上传到了pudn:http://www.pudn.com/downloads546/sourcecode/embedded/detail2254196.html
综合得到的RTL Schematic顶层模块如下:

假设我们要找rptr_empty_u对应的代码,先选中该模块,右键单击在弹出的菜单中选择open sorce of selected inatance即可跳转到定义该instance对应的RTL代码处。并用黄色的三角指针指出来,如下:

但有的较为底层的in,tance,只能跳转到包含该instance的module的开始或结尾。假设我们要找图中与门对应的代码,就只能跳转到包含该instance的module的开始,没有黄色指针,只是有光标,如下:

 

这可能是ISE的一个bug吧,但好在通过planahead可以解决。

下面是planahead下的操作。

在planahead下的综合后,打开RTL Schematic,如下所示:

同样地,要找rptr_empty_u对应的代码,先选中该模块,右键单击在弹出的菜单中选择 Go to Instantiation即可跳转到定义该instance对应的RTL代码处。并将光标指向所在的位置,如下:

 

要找出与门对应的代码,用同样的方法,就可以找到对应的RTL代码,如下:

 

非门同样也可跳转到正确的位置,这在ISE中是做不到的。

注意:

  1. 对于ISE Navigator,只有在RTL schematic中才能追踪某个instance的代码来源,在technology schematic中是不能追踪的;
  2. 相应的,在planahead中,没有 RTL Schematic 与Technology Schematic的概念,而是在不同的设计步骤有不同的schematic。在RTL Design后,看到的schematic对应ISE中的RTL Schematic,RTL Design是综合之前的步骤;在该步骤中的schematic可以追踪某个instance的代码来源。在Netlist Design后,看到的schematic对应ISE中的Technology Schematic,Netlist Design是综合之后的步骤。在该步骤中的schematic不可以追踪某个instance的代码来源。
  3.  另外在planahead中还可以通过右键的菜单找到某个instance的defination,这在ISE中也是没有的;
  4. 关于RTL schematic与technology schematic的区别,详见:http://www.cnblogs.com/youngforever/p/3155045.html
http://www.lbrq.cn/news/809335.html

相关文章:

  • 网站建设如何在宣传部备案/潜江seo
  • 有自己网站做淘宝客赚钱/提升seo排名平台
  • 专业的网站建设联系/湖南网站推广
  • 帝国手机网站cms系统/百度推广有哪些售后服务
  • 莱西网站制作联赛与超/微信客户管理系统平台
  • 富邦建设控股集团网站/百度推广一般要多少钱
  • 遵义花果园网站建设/活动软文怎么写
  • 商务部网站市场体系建设司子站/百度关键字推广费用
  • wordpress模板商店/网站建设方案优化
  • 网站建设推广书籍/114网址大全
  • 淄博机关建设网站/三明网站seo
  • 做网站的叫什么职位/西安疫情最新通知
  • 合肥网站建设 卫来科技/承德seo
  • 秀山县公共资源交易中心/厦门seo培训学校
  • 提交图片的网站要怎么做/武汉千锋教育培训机构怎么样
  • 10_10_微信里网站怎么做的/千锋教育课程
  • 学校网站建设工作会议/北京网站seo技术厂家
  • 上海门户网站制作/哪里可以买链接网站
  • 看装修效果图哪个网站好/泰州seo外包公司
  • 个人网站建设开题报告/快速推广
  • 推荐股票的好网站/网站内链优化
  • 100M家用宽带可做网站服务器吗/搜索引擎优化行业
  • 闽候县建设局网站/优化推广公司哪家好
  • 网站建设实现后台数据导出excel/网站的网络推广
  • html5做音乐网站/2021十大网络舆情案例
  • 建立个人网站的成本/seo优化网站技术排名百度推广
  • 外贸网站制作推广公司/推广方案
  • 熊掌号怎么做网站跳转链接/网站统计器
  • 好sf123网站123/怎么引流到微信呢
  • 企业单位网站怎么做/职业培训学校加盟合作
  • 【C++算法】82.BFS解决FloodFill算法_被围绕的区域
  • 接口自动化测试pytest框架
  • 基于Flask的智能停车场管理系统开发实践
  • easyexcel填充方式导出-合并单元格并设置边框
  • CFIHL: 水培生菜的多种叶绿素 a 荧光瞬态图像数据集
  • OpenLayers 综合案例-信息窗体-弹窗