- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
硬件根底知识及个人学习心得;硬件设计常用的软件工具
电路设计流程
电路设计中的搜索与参考
本卷须知
个人读博士学习心得;
硬件设计包括了原理图及PCB图的设计、硬件代码设计等几个局部。
原理图及PCB幅员设计工具:1〕protel、cadence〔原理图绘制局部是capture软件,PCB幅员设计局部是PCBEditor〕。
Capture设计包括原理图封装及原理图中各元器件连接;PCB设计局部主要是各元器件的PCB封装,及元器件间连线,还包括差分对处理,电磁隔离,电源层和地层的设计。
;
可编程器件的开发工具:
DSP主流产品分为浮点型和定点型产品:开发工具是CCS
FPGA主要分为两大主流产品:altera公司的cyclone\Stratix系列的产品,及Xillinx公司的Spartan\Virtex系列产品。相应的开发软件分别为QuartusII及ISE软件,第三方软件Synplify不常用〔大同小异〕。
;至上而下的设计思路
1〕分析功能需求
划分为几个子功能模块,单独设计每个子模块。
主要就是器件选型、器件典型工作电路配置〔芯片资料网:
TI官网:电源、AD/DA
Xillinx官网:FPGA\CPLD\FLASH
Altera官网:FPGA
AD公司官网:AD/DA器件〕
2〕统筹考虑各模块间匹配、隔离、及供电
3〕跳线〔0欧〕电阻的应用,减少风险。
;至上而下的设计思路
4〕利用capture软件完成原理图绘制
5〕利用Allego软件完成PCB幅员绘制
PCB幅员与原理图设计是个迭代完善的过程
6)硬件电路的调试:
先检查供电是否正常,程序下载是否正常;
测试芯片的供电及输入输出,对于关键功能芯 片,留有测试孔方便调试
;
对于可编程芯片后期程序开发:
〔针对DSP\FPGA\CPLD〕
编程语言:
DSP:c程序,开发流程类似于单片机,主要
1〕初始化文件cmd配置,定义了各存储区起始地址及长度;同时定义了各外部接口的地址
2〕运行主程序:先完成DSP初始化配置:设置其工作频率及中断允许控制等
3〕完成相应功能的子程序或中断程序设计
4〕开发工具CCS,支持软调试;
5〕在线JTAG测试及FLASH工作方式
;
对于可编程芯片后期程序开发:
〔针对DSP\FPGA\CPLD〕
编程语言:
FPGA:verilog程序,主要特点是并发式??作
1〕不同的always模块,在同一时刻执行,参考夏宇闻老师的教材,做几个实例,c的根底,并行的思维;
A=90;d1=1,d2=6,d3=3;
Always@(clk)
begin
d1=A;
D2=d1;
D3=d2;
end
;
对于可编程芯片后期程序开发:
〔针对DSP\FPGA\CPLD〕
编程语言:
2〕几个常用的简单原那么:
Always模块里的变量赋值均采用非阻塞式〔=〕操作,硬件综合的效果相当于一个存放器,尽量让信号在时钟clock控制下同步变化
不同模块间的数据传递通常要经过存放器缓冲一下;如data_adly=data_a
;
对于可编程芯片后期程序开发:
〔针对DSP\FPGA\CPLD〕
编程语言:
FPGA:
开发流程:从上到下,分析总体功能,划分各个子模块〔module〕;定义模块间接口,包括端口信号名称,位宽等。
为增强程序可读性,一定要尽可能多加注释,尤其是输入输出口局部的定义,同时变量名或端口名要尽可能有明确的意义。下面是一个例子。
;
stream_detect(
clk50m,
rst,
sync_rfifo0_rdb,//同步接收FIFO0的状态和控制信号
sync_rfifo0_ren,
sync_rfifo0_STS,
stream_db_in,//接收遥测码流的数据信号
stream_clk_in,//接收遥测码流的时钟信号
rx_ena,//接收数据使能
syn_status,//帧同步状态,0=搜索,1=校验,3=锁定,2=保护
//用户设置的参数
F
文档评论(0)