| EDA/PLD:基于CPLD芯片EPM7128设计数据合并转换器 |
| 来源: 时间: 2007-5-25 14:41:02 |
|
|
摘要:介绍了基于CPLD芯片EPM7128设计的数据合并转换器。其中,控制串行口数据合并时间的计数器电路和并行数据转换成串行的移位电路都是在CPLD中完成的,数据块合并由相应的软件实现,最终形成PCM流输出。 关键词:CPLD 数据合并转换器 串行口 PCM流
|
|
数据交换机的传送速率很高,当其和串行口通信时,在发送前把数据分为两部分分别发送到串行口,然后经过数据合并转换器把各个串行口的数据合并在一起并转换成PCM流。本文介绍了基于CPLD芯片EPM7128设计的数据合并转换器。
|
1 数据合并转换器硬件电路 1.1 主要硬件简介 EPM7128是可编程的大规模逻辑器件,为ALTERA公司的MAX7000系列产品,具有高阻抗、电可擦等特点,可用门单元为2500个,管脚间最大延迟为5ns,工作电压为+5V。 IDT7205为FIFO型异步读写的存储器芯片,容量为8192×9比特,存取时间为12ns,有空、半满、满三个标志位,最大功耗为660mW,工作电压为+5V。 MSM486DX属于PC104嵌入式系统的5X86系列,为AMD-133MHz CPU,具有COM1、COM2两个串口,一个LPT并口,一个FLOPPY接口,一个IDE接口,一个VGA/LCD接口,一个AT-KEYBOARD 接口,16个中断,额定功率为8W,工作电压为+5V。 1.2 数据合并转换器电路框图 可编程的数据合并转换器电路框图如图1所示。图中,DB为数据总线,AB为地址总线,R和W分别为读写信号线,INT5、INT7、INT10和INT11为四个中断,CS1、CS2和CS3是在CPLD内部生成的地址译码器Addr-encoder分别送给分频器、两个串行口的片选信号,ORG是晶振送给分频器的振荡脉冲,CLK 是分频器输出的脉冲FRAMECLK和PCMCLK,WFIFO、RFIFO是由CPLD生成的包含地址信息的访问FIFO的读写脉冲, DATA_IN1和DATA_IN2为串行口输入数据,PCM_DATA是数据合并转换器输出的PCM流,PCMCLKA为输出的码同步时钟,WORLDCLKA为输出的字同步时钟。 |
|
|
1.3 电路工作分析 晶振把时钟脉冲送给分频器,分频器含有两个可编程的定时器。分频器把可控的FRAMECLK和PCMCLK送给CPLD,在CPLD内部经过逻辑组合形成三路脉冲信号,一路控制计数器形成INT5、INT7两个帧频中断触发脉冲,CPU接到中断后立即写FIFO;另一路控制移位寄存器把并行数据转换成串行数据PCM流;第三路形成RFIFO去连续读FIFO。两个串行口通过中断方式(INT10、INT11)接收到外部数据后,暂存缓冲区内,按一定格式由中断INT5控制写给FIFO。 2 CPLD内部逻辑电路 CPLD内部逻辑电路如图2所示。图中,虚线框内为CPLD内部电路,虚线框外为CPLD的I/O口。 |
|
|
2.1 地址译码器 地址译码器Addr-encoder用VHDL语言生成。Addr-encoder的输出有总线驱动器芯片74245的使能脉冲ENB,总线传输方向的使能脉冲DIR,写FIFO操作脉冲WFIFO,分频器和串行口的片选CS1、CS2和CS3,FIFO数据空满标志脉冲RFIFOFLAG,FIFO复位时钟脉冲WCTRL。 2.2 数据移位部分 FRAMECLK周期是PCMCLK 的8倍,它们都是分频器送来的脉冲。FRAMECLK反相后作为FIFO的读信号,两次反相后作为字同步时钟。PCMCLK直接作为移位寄存器74165的时钟触发脉冲,两者与非后的输出低电平作为74165重装载数据的触发电平。它们的信号时序如图3所示。 |
|
|
|
从三者的时序图可知,每当一个字节的最后一位完成移位后,在FRAMECLK脉冲反相的下降沿触发下读取FIFO数据,这时74165的装载使能74165STD恰好为低电平(与非结果),完成新数据装载,然后在PCMCLK脉冲的上升沿作用下开始新一轮次的数据移位。 2.3 帧长计数器部分 两个74161设计成1/64的分频器,也叫帧长计数器,此计数器的时钟为FRAMECLK,计数器的输出最高两位逻辑与为中断INT7,把与门输出与次高位逻辑异或为中断INT5。这样,INT7比INT5在时序上早半个周期。开机复位后,INT7脉冲首先产生,触发中断,CPU中断后在服务程序中把64个字节数据写到FIFO,然后屏蔽中断INT7,半个周期后,FIFO中还剩32个字节数据(因为FIFO的读脉冲和FRAMECLK反相同频)。然后中断INT5到来,CPU响应后,再写64个字节数据给FIFO,使FIFO中一直保持有数据的状态(可避免读FIFO正好落在两个写FIFO之间,FIFO因无数据而读死)。这样,每当中断INT5到来,都写64字节给FIFO,周而复始,所以把64字节定为帧长。 设PCMCLK的频率为f(MHz),则FRAMECLK的频率为f/8,由于帧长为64,所以有:帧频=f/(8×64),PCM流速率=f(bit/s)。分频器的分频比是通过软件设定的,所以PCM流的速率可编程。
|
|
3 软件设计 分频器编程: outp(0x303,0x36)://方式3,方波。// outp(0x300,0x50);//timer0,分频比为80。// outp(0x300,0x00); outp(0x303,0x74);//方式2,脉冲。// outp(0x301,0x08);//timer1,分频比为8。// outp(0x301,0x00) 数据合并: if((com1_count%24)==0) ;//串行口1的24字节数据放在 数组Frame的4~27的位置。// { com_buf1[com1_count++]=db1; //串行口1接收数据// int Original_Counter Original_Counter=com1_count/24 memcpy(Frame[Original_Counter-1]+4,&com_buf1[com1_count-24],24); if((com2_count%24)==0) ;//串行口2的24字节数据放在 数组Frame的28~51的位置。// { com_buf2[com2_count++]=db2 ;//串行口2接收数据// int Original_Counter; Original_Counter=com2_count/24; Memcpy(Frame[Original_Counter-1]+28,&com_ Buf2[com2_count-24],24) ;//合并后的数据放在Frame 数组中。// 写FIFO: void Send_To_Fifo(int number); //Send_To_Fifo函数为中断 服务程序的一部分。// { for int i=0;i<64;i++) outp(WFIFO Frame[number][i]; //数组送给FIFO, 实现数据合并// }
|
|
参考文献 1 Stefan sjoholm, Lennart lindh.边计年, 薛宏熙译.用VHDL设计电子线路. 北京清华大学出版社, 2001 2 李广军, 王厚军. 实用接口技术. 成都: 电子科技大学出版社, 1998 3 谭浩强. C程序设计. 北京: 清华大学出版社,1996
|
|
|
|
 |
相关信息 |
|
 | EPC-X270C2 PC104工控机在汽车焊接线监控系统上的应用 | | | 在汽车生产线的焊接流水线生产过程中,需要对各个焊接工位的实际焊接情况进行监控并记录,采用CAN-bus现场总线作为监控数据的传输方式,能够保证在焊接现场的苛刻环境中数据传输的可靠性与实时性,完全满足焊接流水线监控系统的设计要求。整个焊接流水线监控系统由数据采集系统、现场监控系统和中央管理系统组成。 在数据采集系统中,利用iCAN4050数字I/O模块采集并控制激光焊机的工... >>详细内容 |  | 高性能扩频专用集成芯片SC2001及其应用 | | | 摘要:扩频增益是在直接序列扩频技术中衡量扩频性能优劣的重要指标,而伪随机码的长度又直接决定了扩频处理增益。文中介绍了SIRIUS公司生产的具有高扩频处理增益的直扩芯片ASTRASC2001的结构和特点,同时介绍了由其构成的长码扩频系统的硬件构成和软件设计原理,同时给出了该系统的软件设计框图。
关键词:直接序列扩频; 扩频处理增益; 伪随机码; SC2001
分类号:TN914.42 文献标识... >>详细内容 |  | NCS2001SQ1T2G的技术参数 | | | 产品型号:NCS2001SQ1T2G工作电压Min.(V):0.9,±0.45工作电压Max.(V):7.0,±3.5带宽GBW(典型值)(MHz):1.400转换速率(典型值)(V/us):1.600输入失调电压(25℃,Max.)(mV):6输入偏置电流(Max.)(nA):10pA最大工作电流ID(mA):0.800共模抑制比(Min.)(dB):70噪声电压(典型值)(nV/rtHz):100通道数:1电源供电方式:单/双封装/温度(℃):TSOP-5/-40~105描述:单轨对轨运算放大器价格/1片(套):¥3.20 >>详细内容 |  | NCS2001SN1T1G的技术参数 | | | 产品型号:NCS2001SN1T1G工作电压Min.(V):0.9,±0.45工作电压Max.(V):7.0,±3.5带宽GBW(典型值)(MHz):1.400转换速率(典型值)(V/us):1.600输入失调电压(25℃,Max.)(mV):6输入偏置电流(Max.)(nA):10pA最大工作电流ID(mA):0.800共模抑制比(Min.)(dB):70噪声电压(典型值)(nV/rtHz):100通道数:1电源供电方式:单/双封装/温度(℃):SC70-5/-40~105描述:单轨对轨运算放大器价格/1片(套):¥3.20 >>详细内容 |  | 基于以C8051F060MCU为核心,采用PC104总线的动态称重测量板的设计 | | | 摘要:在分析了现有系统问题的基础上,提出了基于PC/104总线的、以C8051F060MCU为核心的动态称重测量接口板的设计,C8051F060具有独立的双通道16位逐次比较型A/D转换器等功能。经一年多的实际使用证明该设计具有简化了硬、软件设计、增强了系统的工作可靠性、降低了造价等优势。 关键词:PC/104总线;动态称重;模数转换器
被测对象处于非静止状态,即被称重或测力的物体在... >>详细内容 |  | 基于PC104无人机网络视频系统的构建 | | | 无人机具有体积小、重量轻、灵活机动、成本低等特点,可以用于对地侦察拍照,还可以广泛应用于军事侦察、地质勘探以及对火灾等危险区域的勘察预报等,因而在无人机上构建一个网络视频系统就显得十分重要。本文以基于PC104的无人机为基础,构建一个网络视频系统,其中,无人机视频数据的采集、压缩、解压缩、传输都是无人机网络视频系统中的关键技术,本文将针对这几部分的关键问题进... >>详细内容 |
|
|
|
|
 |
热点新闻 |
|
|
|
|
 |
一周排行 |
|
|
|
|
|