C语言与硬件描述语言 数字电路设计工程师一般都学习过编程语言、数字逻辑基础、各种EDA软件工具的使用。就编程语言而言,国内外大多数学校都以C语言为标准,只有少部分学校使用Pascal和Fortran。 算法的描述和验证常用C语言来做。例如要设计Reed-Solomen编码/解码器,我们必须先深入了解Reed-Solomen编码/解码的算法,再编写C语言的程序来验证算法的正确性。运行描述编码器的C语言程序,把在数据文件中的多组待编码的数据转换为相应的编码后数据并存入文件。再编写一个加干扰用的C语言程序,用于模拟信道。它能产生随机误码位(并把误码位个数控制在纠错能力范围内)将其加入编码后的数据文件中。运行该加扰程序,产生带误码位的编码后的数据文件。然后再编写一个解码器的C语言程序,运行该程序把带误码位的编码文件解码为另一个数据文件。只要比较原始数据文件和生成的文件便可知道编码和解码的程序是否正确(能否自动纠正纠错能力范围内的错码位)。用这种方法我们就可以来验证算法的正确性。但这样的数据处理其运行速度只与程序的大小和计算机的运行速度有关,也不能独立于计算机而存在。如果要设计一个专门的电路来进行这种对速度有要求的实时数据处理,除了以上介绍的C程序外,还须编写硬件描述语言(如Verilog HDL或 VHDL)的程序,进行仿真以便从电路结构上保证算法能在规定的时间内完成,并能与前端和后端的设备或器件正确无误地交换数据。 |
|关于本站|小黑屋|Archiver|手机版|无线电爱好网
( 粤ICP备14010847号 )
GMT+8, 2014-5-23 12:47 , Processed in 0.099264 second(s), 27 queries .
Powered by Discuz! X3.1 Licensed
© 2001-2013 Comsenz Inc.