热度 6
2014-1-15 09:50
2081 次阅读|
0 个评论
1、您在之前的设计中是如何扩展微控制器I/O引脚的?使用了哪些芯片?有什么问题或是经验吗? 在设计中扩展微控制器I/O引脚使用的译码器有74LS138、74LS139、74LS47;锁存器有74LS273、74LS373;缓冲器有74LS244;数据双向选择器74LS153D等;下面我举几个例子说明一下,译码器用的更多一些。 使用74LS47D扩展驱动数码管 使用数据双向选择器74LS153D设计的电路 使用74LS138控制LED灯,相必很多人都玩过跑马灯,嘻嘻 使用74LS139控制LED灯 2、您在之前的设计中如何连接不同电平标准的器件?是怎么实现不同电平之间转换的?请上传具体实例。 在设计中我们经常会遇到电平需要转换的情况,常见的电平有TTL电平,CMOS电平,以满足不同标准的器件之间的连接,当然我们有时需要把模拟量转换为数字量或者电磁隔离;5V与3.3V之间的电平互转可以使用的芯片有74LVC4245、74LVC4245A、max3002、SN74LVC1T45等;目前我倾向于使用德州仪器的SN74LVC1T45、SN74LVC2T45、SN74AVC8T245及SN74AVC20T245四款新型双电源电平转换收发器。该新品能够在 1.5V、1.8V、2.5V、3.3V与 5V 电压节点之间进行灵活的双向电平转换,而且可提供全面的可配置性。如果采用 AVC 技术,则每条轨可从1.4V 配置为 3.6V;而采用 LVC 技术时则可从 1.65V 配置为 5.5V。适用于便携式消费类电子产品、网络、数据通信以及计算应用领域。 光电耦合其实也是一种电平转换的方式,只是是吧模拟量转换为数字量,增强了系统的可靠性 3、您认为使用CPLD辅助设计与使用多个分立元件进行设计哪一个更好,如何权衡其优缺点? 就目前来说使用 CPLD 的成本还是比较高的,使用 CPLD 具有很多优点,比如说节省PCB的面积,因为 使用CPLD 可以省掉很多的元件,这样以来系统看起来就比较清爽简约;第二个优点就是给开发节省很多的时间,设计者不必再忙于设计系统的外围电路,只需对CPLD进行控制, 就可以达到电平转换的目的,从而缩短了产品的开发周期,尽快进入市场,抢占先机。第三个优点就是便于升级改进,我们所设计的系统并不是一层不变的,我们需要根据客户的需要不断进行改进,使用CPLD就可以不用重新设计了。当然啦使用多个分立元件进行设计也是有很多优点的,最重要的一点就是我们最关心的成本问题,一个系统做的再好,如果它的成本很高,其结果只能是被淘汰,市场竞争一直很激烈,采用多个分立元件设计可以大大降低成本;综合考虑我觉得暂时CPLD还不能取代 分立元件 ,随着技术的更加成本以及加工工艺的提高,CPLD的成本一定会降下来,那个时候选择 CPLD 是毋庸置疑的。 列举一下 CPLD 在未来能取代 分立元件 的理由 ①可编程电平转换 ②CPLD 并没有专用PWM 电路,但是实现PWM 输出并不难。例如,MAX IIZ CPLD 的内部振荡器可以用作频率源,计数器可以用于调制所产生的频率。 ③CPLD 可以利用其内部振荡器、施密特触发器I/O 以及高密度算法可编程逻辑架构来完成模数转换 ④相对于在毫秒量级上电的微控制器,能够在几微秒内上电的CPLD 是上电排序功能更好的选择。 ⑤CPLD 中利用19%的逻辑就可以完全实现从10 秒到80 秒的间隔周期 ⑥利用扩展I/O,设计人员还可以使用CPLD 进行电平转换,从而提高了CPLD 的实用性 ⑦CPLD可以进行端口管理,连接具有不同I/O 接口的器件 4、您了解CPLD设计的一般流程吗? 学习过FPGA,说实话,在书本上 FPGA 设计真的很复杂, CPLD 和FPGA的区别不大。 CPLD 设计流程: 1. 利用软件开发工具,采用Verilog 或者VHDL 等高级语言编写设计。 2. 对设计进行仿真,以验证功能是否正确。 3. 验证是否满足资源占用和时序通路等物理要求,将设计“适配”到CPLD 中。 4. 对设计进行仿真,以验证时序是否正确。 5. 设计被编程至物理器件中。 5、您在之前的设计中使用过哪些总线接口?如何实现不同接口之间的桥接? 上课的时候总是听到老师在课堂上讲到IIC、RS232、RS485、工业以太网等总线,我目前已经用到的是IIC、RS232。 在实现不同接口之间的桥接的时候我们一般会选择厂商推出的芯片,比如说富士通的MB86E631共包含10个不同接口,包括USB、SATA、PCI Express、Ethernet MAC和TS等在内。这款产品是一种性能和功能强大的大规模集成电路 (LSI),很适合于用来对转码器芯片的控制,同时也适用于那些需要控制诸多接口的产品之中。 有时使用CPLD或者FPGA更容易,我分享一下我偶然看到的一篇文章介绍的是基于FPGA的LPC-ISA总线桥接设计与实现的方法。我对其进行了修改,分享给大家。 1 系统设计 FPGA作为专用集成电路(ASIC)领域中的一种半定制电路,可以解决定制电路的不足,又克服了原有可编程器件门电路数有限的缺点,具有设计周期最短、开发费用低、保密性强、体积小、重量轻、可靠性高等特点 。本系统主要由主设备、LPC总线、LPC-ISA接口桥接单元、ISA总线、ISA设备组成。其中LPC-ISA接口桥接单元采用XILINX公司的XC3S100E-4TQG144C。系统总体设计框图如图1所示。 图1 系统总体设计框图 主设备(如工业控制计算机)通过LPC总线与接口桥接单元连接,接口桥接单元的另一侧通过ISA总线与ISA设备连接。ISA设备可以是8位或16位I/O设备和存储器设备。主设备在取得总线的使用权后,通过LPC总线发起对ISA设备的访问。接口桥接单元根据LPC总线传送的地址特征,或根据LPC总线传送的地址特征和收到的两个总线传送的其他信息,确定传送的数据的宽度(8位或16位),读取LPC总线的数据,并通过ISA总线驱动ISA设备,从而完成8位或16位数据的写操作。 2 硬件逻辑设计 基于FPGA的LPC-ISA接口桥接单元主要包括LPC接口、ISA接口、地址寄存单元、等待时间存储单元、数据宽度判定单元以及数据缓冲单元几部分功能模块,如图2所示。 图2 LPC-ISA接口桥接单元内部结构图 其中:LPC接口和ISA接口,分别用于连接LPC总线和ISA总线;