本帖最后由 ucx 于 2017-9-18 10:26 编辑
从事数字电路设计20年,一直使用VHDL语言,略有些心得。把这点心得写下来的想法产生很久了,然而一直没能静下心来动笔。鉴于写书的任务看起来任重道远,需要严谨的语言和系统的体系结构,那么在这里发发帖子应该更容易实现。此系列贴打算使用同一个主标题,以副标题区分进度。
VHDL是硬件描述语言,如何把硬件描述语言熟练运用成为硬件设计语言是每一位电路设计工程师必备的技能。本系列贴以展现实用功能模块为目的,以VHDL书写风格为主线,分为基础篇和实战篇两大部分。
基础篇内容包括:整数与分数分频,曼彻斯特、4B5B、HDB3等编解码,低速与高速线路比特同步,伪随机序列及CRC校验,同步扰码及自扰码,低速除法器,定点数与浮点数转换。基础篇的内容以学习和训练为目的,侧重于实现方法和步骤,最终以函数function或实体entity表达,以modesim验证程序的结果。
实战篇拟包括:SPI和I2C总线读写;串口在RS232、RS485、RS422以及UART模式下的远程传送;PDH的E1,SDH的155M和622M成帧器;SDRAM、DDR驱动器;以太网MAC控制器,分为MII、RMII、RGMII接口,以及ARP、PING、UDP在FPGA内的实现。由于实战篇的内容需要外设,仅仅通过modesim无法完成验证(在此幻想一下,如果讲述到这部分内容且有读者要求,本人可以针对性地制作开发板用于程序验证)。这部分功能已实体或工程的形式呈现。
本系列贴以QuartusII 11.0及以上版本为开发环境,VHDL input使用VHDL 2008版本。 最后,给此系列贴个什么主标题呢?暂且叫“玩转VHDL”吧。
|