新闻中心

EEPW首页 > EDA/PCB > 设计应用 > FPGA技术高频疲劳试验机控制器

FPGA技术高频疲劳试验机控制器

作者: 时间:2012-08-24 来源:网络 收藏

4.2 运算器设计

运算器是用来将频率数据转换成正弦波点与点之间的定时数据。该运算器实际上最终可转换成一除法器。该除法器描述如下:

—VECTOR(WIDTH— R-1 DOWNTO 0));

END COMPONENT;

上述描述实际上是调用了Altera公司的参数化模块库(LPM)中的一个元件。元件描述后,只要在程序中用Generic map和port map语句映射该元件即可。所要注意的是,上述口信号remainder是numerator和denominator模运算的结果,所以应将remainder与denominator/2相比较,实际结果应在比较的基础上决定加1还是不加1。

4.3 定时器设计

定时器根据运算器传来的定时数据定时。它可以通过对基准时钟计数来实现,当定时时间一到,就触发波形的输出。

设计中采用了两个计数模块来同时计数,一个模块计数时钟的上边沿,而另一模块则计数时钟的下边沿。这样相当于使系统时钟频率提高了一倍,充分利用了系统资源。

4.4 波形输出

波形输出是当定时器满足定时要求触发后就输出此时的正弦值,多个点的触发输出就形成了一个正弦波。

为节省芯片资源,这部分求某时正弦值的功能不采用构造运算器来算出正弦值,而是利用查表结构。象Xilinx公司芯片则可以利用CLB块来配置RAM或直接利用Logiblox来生成。还有象Altera公司的Flex10k系列就用查找表结构(LUT)来构建片内ROM或RAM。在工程文件中创建RAM或ROM块以后,可以通过将各时刻的正弦值(以ASCII字符表示)写进MIF文件(初始化文件)中,从而存储在RAM或ROM块中。在定时器触发后生成该时的地址,通过查询该RAM或ROM块就可输出该时得正弦值。

5 芯片的具体实现

本系统的采用Altera公司的Flex10k系列芯片。芯片利用开发软件Max+plusII将各个模块(图1虚线框部分)用VHDL语言描述并输入,由软件自动编译、综合、布局和布线,生成编程用的数据文件,加载到的配置存储单元。对FPGA芯片进行配置可有多种模式,由于本系统中有单片机,所以采用串行从模式,省掉了用一片EPROM来存储编程数据。当系统上电时,单片机自动将存在其内部的配置数据送到FPGA内部存储单元中。

这个技术基本上多运用于电路方面.


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭