硬件基础知识及学习体会

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Capture 设计包括原理图封装及原理图中各元器件 连接;PCB设计部分主要是各元器件的PCB封装, 及元器件间连线,还包括差分对处理,电磁隔离, 电源层和地层的设计。
硬件设计中常用到的软件工具
可编程器件的开发工具:
➢DSP主流产品分为浮点型和定点型产品:开发 工具是CCS
➢FPGA主要分为两大主流产品:altera公司的 cyclone\Stratix系列的产品,及Xillinx公司的 Spartan\Virtex系列产品。相应的开发软件分别 为QuartusII及ISE软件,第三方软件Synplify不 常用(大同小异)。
2)qurtus或Ise软件均支持后仿真,及编译综合完成之 后再仿真,比较接近真实电路,考虑了延时及程序 中可能存在的竞争冒险等问题
实时在线测试:
逻辑分析仪或chipscope.就是通过JTAG口采集硬件板 卡中某个信号的状态在软件上显示,这个工具非常 方便,可以观察示波器和万用表所不能观察的好多 信号,并且可设出发条件。
电路设计流程
对于可编程芯片后期程序开发: (针对DSP\FPGA\CPLD) 编程语言: FPGA:verilog程序,主要特点是并发式操作 1)不同的always模块,在同一时刻执行,参考夏宇闻
老师的教材,做几个实例,c的基础,并行的思维;
A=90;d1=1,d2=6,d3=3; Always @ (clk) begin
2)搜索主要是指芯片的选型及外围电路设计 主要原则是:参考已有开发板的电路设计,参考芯片数据
手册中给出的用户外围电路设计,常用网站: http://www.analog.com(AD);www.21ic.com(datasheet) http://www.xilinx.com(FPGA); www.triquint.com(filter)
电路设计流程
对于可编程芯片后期程序开发: (针对DSP\FPGA\CPLD) 编程语言: DSP:c程序,开发流程类似于单片机,主要 1)初始化文件cmd配置,定义了各存储区起始地址及
长度;同时定义了各外部接口的地址 2)运行主程序:先完成DSP初始化配置:设置其工作
频率及中断允许控制等 3)完成相应功能的子程序或中断程序设计 4)开发工具CCS,支持软调试; 5)在线JTAG测试及FLASH工作方式
d1<=A; D2<=d1; D3<=d2; end
电路设计流程
对于可编程芯片后期程序开发:
(针对DSP\FPGA\CPLD) 编程语言:
2)几个常用的简单原则: ➢ Always 模块里的变量赋值均采用非阻塞式(<=)操
作,硬件综合的效果相当于一个寄存器,尽量让信号 在时钟clock控制下同步变化
电路设计流程
至上而下的设计思路 1)分析功能需求
划分为几个子功能模块,单独设计每个子模块。 主要就是器件选型、器件典型工作电路配置
(芯片资料网:www.21ic.com TI官网:电源、AD/DA Xillinx官网:FPGA\CPLD\FLASH Altera官网:FPGA AD公司官网:AD/DA器件)
rx_ena,
//接收数据使能
syn_status, //帧同步状态,0=搜索,1=校验,3=锁定,2=保护
//用户设置的参数
FrameLen, //帧长 0~2047
FrameHead, //帧头 四字节 向前对齐
FrameHeadLen, //帧头长度 1~4字节
Rand_en, //扰码使能
Src_type, //发送数据源类型 err_valid, //错误有效标志,高有效 err_frame_cnt,//误帧计数
stream_detect(
Baidu Nhomakorabea
电路设计流程
clk50m,
rst,
sync_rfifo0_rdb, //同步接收FIFO0的状态和控制信号
sync_rfifo0_ren,
sync_rfifo0_STS,
stream_db_in, //接收遥测码流的数据信号
stream_clk_in, //接收遥测码流的时钟信号
total_frm_cnt,//总帧计数
err_bit_cnt,//比特错误计数
frmerr_limit//误帧上限
电路设计流程(仿真部分)
软仿真
1)Modelsim时序仿真
主要是测试模块的编写testbench(参见夏宇闻老师的书), 充分利用实验室资源,大家以前做过的项目用过的 模块及测试程序的编写,拿来主义,先会用了。
2)统筹考虑各模块间匹配、隔离、及供电 3)跳线(0欧)电阻的应用,减少风险。
电路设计流程
至上而下的设计思路 4)利用capture软件完成原理图绘制
5)利用Allego软件完成PCB版图绘制 PCB版图与原理图设计是个迭代完善的过程
6)硬件电路的调试: 先检查供电是否正常,程序下载是否正常; 测试芯片的供电及输入输出,对于关键功能芯 片,留有测试孔方便调试
电路设计流程(仿真部分)
电路设计流程(仿真部分)
硬件设计中的参考与搜索
前人栽树,后人乘凉 1)面对一个新的需求,可以跟师兄师姐讨论一下,那些
部分跟以前设计的部分基本相同,或直接拿来应用,或 稍作修改,节省开发时间。
同时要求我们再做任何一个项目时,保证友好的接口风格, 写好文档,对已成功的设计版本打包压缩。
➢ 不同模块间的数据传递通常要经过寄存器缓冲一下; 如data_adly<=data_a
电路设计流程
对于可编程芯片后期程序开发: (针对DSP\FPGA\CPLD) 编程语言: FPGA: 开发流程:从上到下,分析总体功能,划分各个子
模块(module);定义模块间接口,包括端口信号 名称,位宽等。 为增强程序可读性,一定要尽可能多加注释,尤其 是输入输出口部分的定义,同时变量名或端口名要 尽可能有明确的意义。下面是一个例子。
硬件基础知识及个人学习心得
北京航空航天大学
Outline
硬件设计常用的软件工具 电路设计流程 电路设计中的搜索与参考 注意事项 个人读博士学习心得
硬件设计中常用到的软件工具
硬件设计包括了原理图及PCB图的设计、硬件代 码设计等几个部分。
原理图及PCB版图设计工具:1)protel、cadence (原理图绘制部分是capture软件,PCB版图设计部 分是PCB Editor)。
相关文档
最新文档