verilog中有句程序看不懂,请教

[复制链接]
 楼主| tigris 发表于 2009-3-17 09:06 | 显示全部楼层 |阅读模式
clk_div&nbsp;clk_div_0(&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//分配得到2S的时钟,便于观察<br />&nbsp;&nbsp;&nbsp;&nbsp;.clk(clk),&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//时钟输入,48M<br />&nbsp;&nbsp;&nbsp;&nbsp;.reset(reset),&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//异步复位输入,高电平复位<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;.clk_out(clk_out)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//分频时钟输出<br />&nbsp;&nbsp;&nbsp;&nbsp;);<br /><br /><br />这个语句中.()是什么意思呀?在以前看到的书上没看到这个,网上也不支持符号的搜索。
 楼主| tigris 发表于 2009-3-17 09:14 | 显示全部楼层

全部代码

**-------------------------------------------文件信息----------------------------------------------------------<br />**&nbsp;文件名称:shift_reg2.v<br />**&nbsp;创建者:广州致远电子有限公司<br />**&nbsp;创建日期:2009.02.24<br />**&nbsp;版本号:version0.0.1<br />**&nbsp;功能描述:双向移位寄存器描述,基于EasyFPGA030&nbsp;V1.04<br />**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;按键的值不断以周期1S在寄存器中移动,移动的方向跟sel端口相关<br />**&nbsp;<br />**--------------------------------------修改文件的相关信息--------------------------------------------------<br />**&nbsp;修改人:<br />**&nbsp;修改日期:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />**&nbsp;版本号:<br />**&nbsp;修改内容:<br />**<br />*******************************************************************************/<br />module&nbsp;shift_reg2(<br />&nbsp;&nbsp;&nbsp;&nbsp;clk,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//时钟输入,48MHz<br />&nbsp;&nbsp;&nbsp;&nbsp;reset,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//复位输入,低电平有效<br />&nbsp;&nbsp;&nbsp;&nbsp;sel,&nbsp;&nbsp;&nbsp;&nbsp;//选择移动方向,0:按下,1:未按下<br />&nbsp;&nbsp;&nbsp;&nbsp;D,&nbsp;&nbsp;&nbsp;&nbsp;//输入由开关决定,0:按下,1:未按下<br />&nbsp;&nbsp;&nbsp;&nbsp;Q,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//输出,0:点亮,1:熄灭<br />&nbsp;&nbsp;&nbsp;&nbsp;);<br />input&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clk;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//输入输出定义<br />input&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;reset;<br />input&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sel;<br />input&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />output&nbsp;&nbsp;&nbsp;&nbsp;[3:0]&nbsp;&nbsp;&nbsp;&nbsp;Q;<br /><br />reg&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[3:0]&nbsp;&nbsp;&nbsp;&nbsp;Q;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//寄存器说明<br /><br />wire&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clk_out;<br /><br />always&nbsp;@(posedge&nbsp;clk_out)&nbsp;&nbsp;&nbsp;&nbsp;//D触发器描述<br />begin<br />&nbsp;&nbsp;&nbsp;&nbsp;if(sel)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Q&nbsp;&lt=&nbsp;{Q[2:0],D};<br />&nbsp;&nbsp;&nbsp;&nbsp;else<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Q&nbsp;&lt=&nbsp;{D,&nbsp;Q[3:1]};<br />end<br /><br />clk_div&nbsp;clk_div_0(&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//分配得到2S的时钟,便于观察<br />&nbsp;&nbsp;&nbsp;&nbsp;.clk(clk),&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//时钟输入,48M<br />&nbsp;&nbsp;&nbsp;&nbsp;.reset(reset),&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//异步复位输入,高电平复位<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;.clk_out(clk_out)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//分频时钟输出<br />&nbsp;&nbsp;&nbsp;&nbsp;);<br /><br />endmodule<br />
 楼主| tigris 发表于 2009-3-17 09:22 | 显示全部楼层

不好意思粗心了,看到了后面的代码

是分频程序例化,看到代码了
ryanyoung 发表于 2009-3-18 19:16 | 显示全部楼层

11

这里是实例化一个实体,顶层文件里面的,好比你原先定义了clk_div的工作方式,这里你产生一个实体,叫做clk_div_0括号里面是对应原先你设计的参数在实体中的映射
xyzyyb86 发表于 2009-5-20 22:45 | 显示全部楼层

一楼问题

.()是不是对应端口的一种命名方式,这样在新模块中端口不用按对应顺序来写。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

76

主题

175

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部

76

主题

175

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部