小舍YZ 发表于 2017-7-13 15:41:28

51单片机与FPGA接口逻辑设计

51单片机与FPGA接口逻辑设计

可编程逻辑器件(PLD)及EDA技术的应用成为电子系统设计的潮流。FPGA是一种新兴的可编程逻辑器件(PLD),与其它PLD相比,具有更高的密度、更快的工作速度和更大的编程灵活性。

单片机以其体积小、功能齐全、价格低廉、可靠性高等方面所具有的独特优点,长期以来被广泛的应用在各领域。
基于FPGA的高密度、高速度、现场可编程的能力和单片机强大的数据处理功能,制作了波形发生系统,用于产生各种频率的正弦波、方波和三角波,其幅值0~5V可调,频率步进达到1Hz以下,频率范围1Hz~100kHz。
该波形发生器以单片机(MCS8031)为中心控制系统,FPGA片内实现DDS技术,在此DDS技术中,采用6级BCD比例乘法器级联。首先由单片机将E2PROM28c64中存入波形数据。FPGA在单片机的控制下,利用较高的时钟频率(16M)生成用户要求的频率的128倍频,并以此频率在E2PROM28c64取波形数据,将其发送给D/A转换器,并通过滤波器输出。同时单片机实现对输出电压的控制。
本设计中,FPGA选用Altera公司的FLEX10K,晶振频率可达40MHz。使用MAX+PLUSⅡ开发系统支持。FLEX10K系列是FLEX系列当中非常有代表性的FPGA器件系列,每个FLEX10K器件包含一个嵌入式阵列和一个逻辑阵列。嵌入式阵列用来实现各种存储器及复杂的逻辑功能。逻辑阵列用来实现普通逻辑功能。嵌入式阵列和逻辑阵列结合而成的嵌入式门阵列具有高性能、高密度、灵活的互连方式、支持多电压I/O接口、多种配置方式以及低功耗等特性。
在此设计中,单片机和FPGA完成各自功能设计较容易实现,关键的难点是两者的接口设计。

经过不断的摸索,可以用VHDL语言实现接口程序设计,从而圆满实现了整个波形发生器的设计。

d643189658 发表于 2017-8-11 18:43:45

谢谢楼主的分享
页: [1]
查看完整版本: 51单片机与FPGA接口逻辑设计