网志

VHDL教程-第2部分-Testbench

吉恩·布雷尼曼2007年10月30日3条评论

快速链接

在一个 较早的文章 我介绍了一个简单设计的VHDL编码。在本文中,我将继续该过程,并创建一个测试平台模块来测试早期的设计。 Xilinx ISE环境使启动测试过程变得非常容易。要开始此过程,请从“项目”下的菜单项中选择“新源”。这将启动“新源向导”。在向导中,选择“ VHDL测试台”,然后输入新模块的名称(单击“下一步”继续)。然后,“新源向导”允许您选择要与新源关联的源(在本例中为上一篇文章的ClkDiv),然后单击“下一步”。然后,向导将为测试平台模块创建必要的样板(请参见下文)。

样板1

本文以PDF格式提供,便于打印

样板2

样板包括组件声明部分(第38-58行)和测试实例化(第62-70行)。样板还包括用于主要测试过程的存根(tb:PROCESS,第72-81行)。我们的工作是将这个简单的存根转换为实际的测试序列,以执行我们的设计。

设计测试平台的第一步是为主时钟(MCLK)创建一个连续的时钟信号。 VHDL提供了一种创建重复信号的简单方法。这在以下代码片段中完成。

时间段

 Clockgen

第一条语句(第60行)定义了一个常数,该常数等于主时钟周期的一半。其余的行(74-48)创建一个切换主时钟(MCLK)的过程。在第一个12.5ns之后,MCLK被驱动为低电平,在随后的12.5ns之后,MCLK被驱动为高电平。该过程总共等待25ns,然后重复。此步骤序列产生40MHz的主时钟信号。

下一步是建立设备的初始条件并生成复位脉冲。以下语句显示了此顺序。

初始化

在上图中,第80-81行打开了测试平台过程(tb)。第一个延迟(线84,等待100 ns)允许CPLD中的上电复位动作完成。根据该语句,我们为设备建立了初始条件(第86行,注意:SeqReset为驱动器低电平)。 100ns(第87行)后,将设备从复位状态(第89行)移开并运行。默认时钟速率有效,可以通过暂停测试平台过程并允许设备运行来观察(第90行,等待1μs)。

现在可能是查看某些数据的好时机。模拟以上语句,我们可以检查数据是否开始像我们期望的那样看起来。

重置测试

查看数据,从时间零开始,我们可以看到MCLK在SeqReset保持低电平的情况下进行了切换。在第一个主要时序标记(200ns)处,我们可以看到SeqReset被驱动为高电平,而adc_clk很快开始切换(半周期为500ns,或预期的1MHz速率)。到现在为止还挺好。

该过程的下一步是写入时钟除数(RegSel ='01',InByte =速率选择,RegStrb ='0',然后RegStrb ='1')。经过必要的延迟后(对于RegStrb并允许时钟除数运行),我们可以为每个时钟速率重复该序列。以下代码片段显示了这些序列。

 钟表

对于每个目标时钟速率,我们需要重复设置时钟选择寄存器(Inbyte)和寄存器选择(RegSel)值以及切换RegStrb行(即第92-94行)的基本顺序。我们还需要留出时间观察选定的时钟速率(即第95行)。然后针对每个时钟速率重复这些语句(记住要增加每个新时钟速率的“观察”等待时间)

现在我们可以看看完成的结果。

整体测试

在每个时钟选择点(切换RegStrb),我们都会看到输出时钟速率(Adc_Clk)发生变化。我测试了这段代码是一件好事。在生成该测试平台的过程中,我发现我在较早的VHDL代码中犯了一个错误(剪切和粘贴,但第48行和第50行的数据没有更改)。在上一篇文章中,ClkDiv流程编写为:

oldClkDiv

在测试中,我发现需要将ClkDiv流程更正为:

 newClkDiv

它只是表明,如果您没有测试过,它可能就无法工作。

在以后的文章中,我将展示VHDL的一些更高级的编程技术。

再次,祝您设计愉快!

基因


吉恩·布雷尼曼(Gene Breniman)先前的文章:
   VHDL教程
吉恩·布雷尼曼(Gene Breniman)的下一篇文章:
   我生命中的伟人。

[-]
评论者 鲍勃 2007年11月17日
谢谢,吉恩。我发现本文对理解测试平台的产生非常有帮助。 -鲍勃
[-]
评论者 涡流2011年6月8日
谢谢!很有帮助!
[-]
评论者 杰里米 2007年11月15日
感谢您的教程。我是一名开始使用FPGA的学生,当有人可以简单而完整地解释它时,它确实会有所帮助。 您对Xilinx Spartan-3E开发板一无所知吗?

要发布对评论的回复,请单击每个评论所附的“回复”按钮。要发布新评论(而不是回复评论),请查看评论顶部的“写评论”标签。

注册后,您可以参加所有相关网站上的论坛,并获得所有pdf下载的访问权限。

注册

我同意 使用条款隐私政策.

试试我们偶尔但很受欢迎的时事通讯。非常容易退订。
或登录