<?xml version="1.0" encoding="GBK"?>
<?xml-stylesheet href="/style/rss.css" type="text/css"?>
<rss version="2.0" xmlns:eb="http://blog.tom.com/">
<channel>
  <title>〖星梦影居〗</title>
  <link>http://blog.tom.com/xwaixwz</link>
  <description><![CDATA[天地间任我展翅高飞 ]]></description>
  <language>zh</language>
  <generator>newblog.tom.com RSS</generator>
  <pubDate></pubDate>    <item>
		<title><![CDATA[ 基于FPGA的电子稳像平台的研究 ]]></title>
		<link>http://blog.tom.com/xwaixwz/article/896.html</link>
		<description><![CDATA[ <font face="Verdana">&nbsp;&nbsp; <a href="http://www.dzsc.com/" target="_blank">电子</a>摄像系统已广泛应用于军用及民用测绘系统中，但是效果受到其载体不同时刻姿态变化或震动的影响。当工作环境比较恶劣，尤其是在航空或野外操作时，支撑摄像机平台的震动会引起图像画面的抖动，令观察者视觉疲劳，从面产生漏警和虚警。所以在运行中，如何稳像成为十分重要的问题，特别是在长焦距、高分辨力的监视跟踪系统中更加突出。具璞蒿、实性性强、体积小巧等特点，得到更广泛的应用。</font> ]]></description>
		<eb:creationDate>2008-07-30 11:21:20</eb:creationDate>
		<eb:modificationDate></eb:modificationDate>
    </item>
    <item>
		<title><![CDATA[ “我和阿库”有奖征文活动公告 ]]></title>
		<link>http://blog.tom.com/xwaixwz/article/887.html</link>
		<description><![CDATA[ <p><font style="BACKGROUND-COLOR: #ff9933" color="#000000">一、 活动名称：“我和阿库”维库电子市场网征文比赛<br>
二、 征文主题： 阿库的故事、阿库的表情<br>
三、 活动目的： 解决电子行业需求，推动电子行业发展!<br>
四、 活动宗旨： 发展中国电子科技，为全球电子生意人服务！</font></p>
<p><font style="BACKGROUND-COLOR: #ff9933" color="#000000">五、 组织机构：</font></p>
<p><font style="BACKGROUND-COLOR: #ff9933" color="#000000">主办网站：维库电子市场网(</font><a href="http://www.dzsc.com/"><font style="BACKGROUND-COLOR: #ff9933" color="#000000">www.dzsc.com</font></a><font style="BACKGROUND-COLOR: #ff9933" color="#000000">)</font></p>
<p><font style="BACKGROUND-COLOR: #ff9933" color="#000000">联办网站： 维库电子开发网(</font><a href="http://www.weeqoo.com/"><font style="BACKGROUND-COLOR: #ff9933" color="#000000">www.weeqoo.com</font></a><font style="BACKGROUND-COLOR: #ff9933" color="#000000">)<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 维库电子人才网(</font><a href="http://www.dzrc.com.cn/"><font style="BACKGROUND-COLOR: #ff9933" color="#000000">www.dzrc.com.cn</font></a><font style="BACKGROUND-COLOR: #ff9933" color="#000000">)<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; chinaicmart(</font><a href="http://www.chinaicmart.com/"><font style="BACKGROUND-COLOR: #ff9933" color="#000000">www.chinaicmart.com</font></a><font style="BACKGROUND-COLOR: #ff9933" color="#000000">)<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 维库化工网(</font><a href="http://www.lookchem.com/"><font style="BACKGROUND-COLOR: #ff9933" color="#000000">www.lookchem.com</font></a><font style="BACKGROUND-COLOR: #ff9933" color="#000000">)<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 四方物流网(</font><a href="http://www.56156.com/"><font style="BACKGROUND-COLOR: #ff9933" color="#000000">www.56156.com</font></a><font style="BACKGROUND-COLOR: #ff9933" color="#000000">)<br>
支持单位: 杭州威士顿网络科技有限公司<br>
六、 参与方式<br>
&nbsp;&nbsp;<br>
&nbsp; 参赛要求：<br>
&nbsp;（1） 围绕活动主题，体裁不拘，题材不限，字数2000字以内。以体现<br>
&nbsp;（2） 参与征文活动者通过活动页面: http://www.dzsc.com/zuanti/aku 进行投稿<br>
&nbsp;（3） 参赛者必须注明真实姓名、性别、通讯地址、邮编、电子邮件、联系电话。<br>
&nbsp;（4） 所有参赛者都不需交纳参赛费。<br>
七、 奖项设置</font></p>
<p><font style="BACKGROUND-COLOR: #ff9933" color="#000000">&nbsp;&nbsp;&nbsp; ………………</font></p>
<p><font style="BACKGROUND-COLOR: #ff9933" color="#000000">详情请浏览官方专题页面：</font><a href="http://www.dzsc.com/zuanti/aku" target="_blank"><font style="BACKGROUND-COLOR: #ff9933" color="#000000">http://www.dzsc.com/zuanti/aku</font></a></p>
<p><font style="BACKGROUND-COLOR: #ff9933" color="#000000">相关视频：</font><a href="http://flash.ent.tom.com/flash_show.php?user=xwaixwz&amp;id=73609" target="_blank"><font style="BACKGROUND-COLOR: #ff9933" color="#000000">精明的阿库</font></a></p>
<p><font style="BACKGROUND-COLOR: #ff9933"><object codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" height="300" width="400" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"><param name="_cx" value="10583">
<param name="_cy" value="7938">
<param name="FlashVars" value="">
<param name="Movie" value="http://www.dzsc.com/zuanti/aku/aku0708.swf">
<param name="Src" value="http://www.dzsc.com/zuanti/aku/aku0708.swf">
<param name="WMode" value="Opaque">
<param name="Play" value="-1">
<param name="Loop" value="-1">
<param name="Quality" value="AutoHigh">
<param name="SAlign" value="">
<param name="Menu" value="-1">
<param name="Base" value="">
<param name="AllowScriptAccess" value="">
<param name="Scale" value="ShowAll">
<param name="DeviceFont" value="0">
<param name="EmbedMovie" value="0">
<param name="BGColor" value="">
<param name="SWRemote" value="">
<param name="MovieData" value="">
<param name="SeamlessTabbing" value="1">
<param name="Profile" value="0">
<param name="ProfileAddress" value="">
<param name="ProfilePort" value="0">
<param name="AllowNetworking" value="all">
<param name="AllowFullScreen" value="false">
<embed src="http://www.dzsc.com/zuanti/aku/aku0708.swf" width="400" height="400" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></object></font></p>
<p><font style="BACKGROUND-COLOR: #ff9933">相关图片：</font></p>
<p><font style="BACKGROUND-COLOR: #ff9933"><img style="WIDTH: 396px; HEIGHT: 374px" height="303" alt="" src="http://www.dzsc.com/zuanti/aku/images/index_10.gif" width="355"></font></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p> ]]></description>
		<eb:creationDate>2008-07-22 14:44:45</eb:creationDate>
		<eb:modificationDate></eb:modificationDate>
    </item>
    <item>
		<title><![CDATA[ 阿库人才“镀金”全攻略 ]]></title>
		<link>http://blog.tom.com/xwaixwz/article/886.html</link>
		<description><![CDATA[ <p><object id="MediaPlayer1" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,7,1112" type="application/x-oleobject" height="300" standby="Loading Microsoft Windows Media Player components..." width="400" align="baseline" border="0" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"><param name="URL" value="http://www.dzsc.com/zuanti/aku/aku0708.swf">
<param name="rate" value="1">
<param name="balance" value="0">
<param name="currentPosition" value="0">
<param name="defaultFrame" value="datawindow">
<param name="playCount" value="10">
<param name="autoStart" value="-1">
<param name="currentMarker" value="0">
<param name="invokeURLs" value="0">
<param name="baseURL" value="">
<param name="volume" value="50">
<param name="mute" value="0">
<param name="uiMode" value="full">
<param name="stretchToFit" value="0">
<param name="windowlessVideo" value="0">
<param name="enabled" value="-1">
<param name="enableContextMenu" value="-1">
<param name="fullScreen" value="0">
<param name="SAMIStyle" value="">
<param name="SAMILang" value="">
<param name="SAMIFilename" value="">
<param name="captioningID" value="">
<param name="enableErrorDialogs" value="0">
<param name="_cx" value="10583">
<param name="_cy" value="7938">
<embed src="http://www.dzsc.com/zuanti/aku/aku0708.swf" align="baseline" border="0" width="400" height="300" type="application/x-mplayer2" pluginspage="" name="MediaPlayer1" showc="" showpositi="" showaudioc="" showtracker="1" showdisplay="0" showstatusbar="1" autosize="0" showgotobar="0" showcapti="" autostart="1" autorewind="0" animati="" transparentatstart="0" allowscan="1" enablec="" clicktoplay="0" defaultframe="datawindow" invokeurls="0"></object></p>
<p><font color="#000000">人才“阿库”出演的动画片《阿库-天下无贼版》亮相了，它集合了电影《天下无贼》的经典台词，并进行了巧妙的组合，诙谐幽默，寓教于乐。</font></p>
<p><font color="#000000">&nbsp; 2007年阿库成为“第三届中小企业电子商务应用发展大会暨2007年中国行业电子商务网站TOP100颁奖盛典”上获悉，我省创办的</font><a href="http://www.dzsc.com/" target="_blank"><font color="#000000">维库电子市场网</font></a><font color="#000000">从业内众多的行业网站中脱颖而出，喜获“</font><a href="http://www.dzsc.com/news/html/2008-3-26/71609.html" target="_blank"><font color="#000000">2007中国行业电子商务网站100强</font></a><font color="#000000">”，同时获得该奖项的</font><a href="http://www.dzsc.com/product/file636.html" target="_blank"><font color="#000000">电子电器</font></a><font color="#000000">行业网站的还有：深圳的华强电子市场网，北京的21IC中国电子网和中发网。</font></p>
<p>&nbsp;</p> ]]></description>
		<eb:creationDate>2008-07-22 13:38:10</eb:creationDate>
		<eb:modificationDate></eb:modificationDate>
    </item>
    <item>
		<title><![CDATA[ 基于FPGA的PCI总线接口设计 ]]></title>
		<link>http://blog.tom.com/xwaixwz/article/864.html</link>
		<description><![CDATA[ 　　在现代数据采集及处理系统中，ISA、EISA、MCA等扩展总线已无法适应高速数据传输的要求，而PCI局部总线以其优异性价比和适应性成为大多数系统的主流总线。
<p><strong>PCI总线特点</strong><br>
<font color="#FFFFFF">---</font>PCI总线宽度32位，可升级到64位；最高工作频率33MHz，支持猝发工作方式，使传输速度更高；低随机访问延迟(对从总线上的主控寄存器到从属寄存器的写访问延迟为60ns)；处理器/内存子系统能力完全一致；隐含的中央仲裁器；多路复用体系结构减少了管脚数和PCI部件；给于ISA、EISA、MAC系统的PCI扩展板，减少了用户的开发成本；对PCI扩展卡及元件能够自动配置，实现设备的即插即用；处理器独立，不依赖任何CPU，支持多种处理器及将来更高性能的处理器；支持64位地址；多主控制允许任何PCI主设备和从设备之间进行点对点访问；PCI提供数据和地址的奇偶校验功能，保证了数据的完整性和准确性。</p>
<p>PCI接口开发现状<br>
<font color="#FFFFFF">---</font>目前开发PCI接口大体有两种方式，一是使用专用的PCI接口芯片，可以实现完整的PCI主控模块和目标模块接口功能，将复杂的PCI总线接口转换为相对简单的用户接口。用户只要设计转换后的总线接口即可，缩短了开发周期，缺点是用户可能只用到部分PCI接口功能，这样造成了一定的逻辑资源浪费，也缺乏灵活性，很可能增加板上的组件，导致产品成本的增加和可靠性的降低。二是使用可编程器件，采用FPGA的优点在于其灵活的可编程性，首先PCI接口可以依据插卡功能进行最优化，而不必实现所有的PCI功能，这样可以节约系统的逻辑资源。而且，用户可以将PCI插卡上的其他用户逻辑与PCI接口逻辑集成在一个芯片上，实现紧凑的系统设计。当系统升级时，只需对可编程器件重新进行逻辑设计，而无需更新PCB版图。现在已经有越来越多的用户使用可编程器件如FPGA、CPLD等进行PCI设备的开发。<br>
<font color="#FFFFFF">---</font>本文所论述的PCI接口控制器是作为一个转换接口工作于PCI总线与用户设备之间，也可以认为其主要功能是起一个桥梁作用，完成用户设备与PCI总线间的信息传送。</p>
<p><strong>PCI接口设计</strong><br>
<font color="#FFFFFF">---</font>在PCI板卡的设计中，核心设计有时序控制和配置空间两部分。时序控制保证了板卡能按正常的PCI时序工作，配置空间部分保证了板卡的即插即用功能。在进行FPGA设计时本设计使用的软件是Altera的MAX+PLUSII，开发芯片是<a href="http://www.qooic.com/detail-EPF10K20RC240-3.html" target="_blank">EPF10K20RC240-3</a>。<br>
● PCI接口配置空间的实现<br>
<font color="#FFFFFF">---</font>PCI总线定义了3种物理地址空间，分别是存储器地址空间、I/O地址空间和配置地址空间。<br>
<font color="#FFFFFF">---</font> 配置空间是PCI所特有的一种空间，其目的在于提供一套适当的配置措施，使之满足现行的和可预见的系统配置机构。配置空间是一长度为256字节并且有特定记录结构的地址空间，可以在系统自举时访问，也可在其他时间访问。该空间分为首部区和设备有关区两部分，设备在每个区中只须实现必要的和与之相关的寄存器。配置空间的基地址寄存器提供了一种为设备指定存储空间或I/O空间的机制。操作系统在启动的时候要判断系统中有多少存储器、系统中的I/O设备需要多少地址空间，然后根据得到的结果，自动配置系统的存储空间和I/O空间，实现设备无关管理。在本设计中，那些只读的配置寄存器通过硬件连线到相应的值，因而不占用宏单元。通过配置寄存器，配置软件可了解目标设备的存在、功能及配置要求。<br>
<font color="#FFFFFF">---</font>(1)厂商ID：此16位的只读寄存器定义了设备的生产厂商，可以使用MACH芯片最初的生产厂商－AMD公司的ID值<a href="http://www.qooic.com/detail-1022.html" target="_blank">1022</a>。<br>
<font color="#FFFFFF">---</font>(2)设备ID：该值由生产厂商分配以识别其产品，可为除00000000H和0FFFFFFFFH中的任意值。<br>
<font color="#FFFFFF">---</font>(3)命令寄存器：此寄存器控制了设备响应PCI访问的能力。位1、6、8在本设计中被实现。本设计要求实现对存储空间的访问，位1设置为1，则设备响应PCI对存储器访问；位6控制了设备对奇偶校验错误的响应；当位8被设置为1时，设备能够驱动SERR线，0则禁止设备的SERR输出驱动器。在这里当系统复位后，位1、6、8被设置为0。<br>
<font color="#FFFFFF">---</font>(4)状态寄存器：此寄存器记录了PCI相关事件的信息。在本系统中，位9、10、11、14、15被设计实现。位10∶9为设备选择(DEVSEL#)定时，00B为慢速，01B为中速，10B为快速，11B保留。本设计这两位被硬件连线为01B。当目标设备失败时，位11被设置为1，当发生系统错误时位14置1，发生奇偶校验错误时位15置1。<br>
<font color="#FFFFFF">---</font>(5)基地址寄存器：该寄存器用来映射设备的存储器地址空间，与设备地址空间大小相应的低位被强制为0，因此在配置写交易中，配置软件通过对这个寄存器的所有位写1，然后再读出该寄存器的值来决定设备存储器所占用的地址范围。位0用来定义设备是存储器映射还是I/O映射，在本设计中，位0被设为低以表明目标设备为存储器映射的。<br>
如需要256字节的存储空间，配置软件写入0FFFFFFFFH，本设备送出0FFFFFF00H，而配置软件再次写入基地址寄存器的值与本设备的0FFFFFF00H相与的结果就是基地址值，如配置软件再次写入0CD000000H则基地址值为0CD000000H。<br>
<font color="#FFFFFF">---</font>(6)类代码寄存器：这个24位的只读寄存器用来说明设备的基本功能和它的可编程接口。这里，此寄存器被强制为018000H，即设备为大容量存储控制器。<br>
<font color="#FFFFFF">---</font>(7)首部类型寄存器：这个只读寄存器的位0～6定义了首部格式，位7说明了设备为单功能还是多功能。首部类型1为PCI-PCI桥定义，首部类型2则用于PCI CardBus桥。在本设计中寄存器被强制为0来显示其为单功能设备且首部类型为0。<br>
<br>
● 时序控制<br>
<img src="http://wisdom.dzsc.com/images/531152115/2006515518180432.jpg" align="right"> <font color="#FFFFFF">---</font>在时序控制程序中采用状态机模型来实现不同时序的转换。各种命令、数据交换、控制均在状态机的管理下进行工作。PCI总线上的信号是并行工作的，因此，对应每个状态必须明确其执行的任务。这些任务要用VHDL的进程语句来描述所发生的事件。本设计中的状态机共使用了6种状态，它以从设备响应状况为依据，主要以DEVSEL#信号和TRDY#信号的状况为依据。状态机如图1所示，分别对应空闲状态(此状态DEVSEL#、TRDY#和STOP#以及其他输出信号为高阻态)；准备状态、DEVSEL#和TRDY#均为高电平状态，DEVSEL#为低电平且TRDY#为高电平状态，DEVSEL#和TRDY#均为低电平状态；操作结束状态(此状态使DEVSEL#、TRDY#和STOP#维持一个周期高电平)。本系统接到复位信号后对系统进行复位，然后转入空闲状态，在空闲状态中采样总线，并根据总线的变化来决定下一个时钟上升沿后状态机转入何种状态，这些时序和程序中用到的信号都是基本且必须的，在进行开发时可以根据需要增添必要的状态和信号，VHDL对状态机的描述如下。<br>
<font color="#FFFFFF">---</font> type pci_state is (Idle, Ready, DevTrdyHi, DevLoTrdyHi, DevTrdyLo, OprOver);<br>
signal c_state :pci_state;<br>
<font color="#FFFFFF">---</font>Idle为空闲状态；Ready为准备状态；DevTrdyHi表示DEVSEL#和TRDY#均为高电平状态；DevLoTrdyHi表示DEVSEL#为低电平且TRDY#为高电平状态；DevTrdyLo表示DEVSEL#和TRDY#均为低电平状态；OprOverr表示操作结束状态。<br>
程序如下。<br>
process(pci_rst,pci_clk)<br>
begin<br>
if pci_rst = '0' then<br>
c_state &lt;= Idle;<br>
elsif pci_clk'event and pci_clk='1' then<br>
case c_state is<br>
when Idle=&gt;<br>
if pci_frame_l='1' and pci_irdy_l='1' then<br>
c_state &lt;= Idle;<br>
elsif pci_frame_l='0' then<br>
c_state &lt;= Ready;<br>
else<br>
c_state &lt;= c_state;<br>
end if;<br>
when Ready=&gt;<br>
if pci_frame_l='1' and pci_irdy_l='1' then<br>
c_state &lt;= OprOver;<br>
else<br>
c_state &lt;= DevTrdyHi;<br>
end if;<br>
when DevTrdyHi=&gt;<br>
if pci_frame_l='1' and pci_irdy_l='1' then<br>
c_state &lt;= OprOver;<br>
else<br>
c_state &lt;= DevLoTrdyHi;<br>
end if;<br>
when DevLoTrdyHi=&gt;<br>
if pci_frame_l='1' and pci_irdy_l='1' then<br>
c_state &lt;= OprOver;<br>
else<br>
c_state &lt;= DevTrdyLo;<br>
end if;<br>
when DevTrdyLo=&gt;<br>
if pci_frame_l='1' and pci_irdy_l='1' then<br>
c_state &lt;= OprOver;<br>
elsif pci_frame_l='1' and pci_irdy_l='0' and trdy_l='0' then<br>
c_state &lt;= OprOver;<br>
else<br>
c_state &lt;= c_state;<br>
end if;<br>
when OprOver=&gt;<br>
c_state &lt;= Idle;<br>
when others=&gt;<br>
c_state &lt;= Idle;<br>
end case;<br>
end if;<br>
end process;<br>
<font color="#FFFFFF">---</font>下一步应列出每个状态所对应的并发事件，写出相关的进程。进程语句是一个并行语句，它定义进程被激活时将要执行的特定行为。例如，在Ready状态时，就要判断从主设备方发来的地址信息是否与从设备地址相同，因此要写出地址比较进程。<br>
<font color="#FFFFFF">---</font> address_compare：process(pci_rst，pci_clk)，主要内容是对地址译码，判断地址是否在从设备空间，如果在此空间则可做下一步动作，否则不做其他动作。<br>
&nbsp;<font color="#FFFFFF">---</font>从以上分析过程可以得到整个设计思路如下：在时钟的上升沿采样FRAME#、地址和命令，如果FRAME#有效则译码地址和命令，如果总线命令为011x，并且总线上的地址在目标地址范围内，表明这是对本设备的存储器操作；或者总线命令为101x，且IDSEL信号有效，表明这是对本设备配置空间的操作。在这两种情况下，根据总线命令的最后一位确定是读操作还是写操作，有效DEVSEL#和TRDY#信号，开始数据传输；并在传输过程中采样FRAME#和IRDY#信号，确认最后一个数据周期，无效DEVSEL#和TRDY#信号，结束数据传输。<br>
<font color="#FFFFFF">---</font> 通过以上设计，在MAX+PLUSII环境下的其中一组模拟结果如图2所示。</p>
<p><strong>结束语</strong><br>
本文给出了在PCI总线上利用FPGA技术设计PCI总线接口的设计方案。利用这项技术可以将自己的的算法技术和一些软件做成硬件，固化到卡上，这样既提高了运行速度，也可以保护知识产权。</p> ]]></description>
		<eb:creationDate>2008-07-01 10:00:11</eb:creationDate>
		<eb:modificationDate></eb:modificationDate>
    </item>
    <item>
		<title><![CDATA[ 基于CPLD/FPGA的半整数分频器的设计 ]]></title>
		<link>http://blog.tom.com/xwaixwz/article/863.html</link>
		<description><![CDATA[ <strong>摘要：</strong>简要介绍了CPLD/FPGA器件的特点和应用范围，并以分频比为2.5的半整数分频器的设计为例，介绍了在MAX+plus II开发软件下，利用VHDL硬件描述语言以及原理图的输入方式来设计数字逻辑电路的过程和方法。
<p style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&nbsp;&nbsp;&nbsp; <b>关键词：</b>VHDL CPLD/FPGA 数字逻辑电路设计 半整数分频器</p>
<p style="TEXT-INDENT: 0px"><b>1 引言</b></p>
<p style="TEXT-INDENT: 30px">CPLD（Complex programmable Logic Device，复杂可编程逻辑器件）和FPGA（Field programmable Gates Array，现场可编程门阵列）都是可编程逻辑器件，它们是在PAL、GAL等逻辑器件基础上发展起来的。同以往的PAL、GAL相比，FPGA/CPLD的规模比较大，适合于时序、组合等逻辑电路的应用。它可以替代几十甚至上百块通用IC芯片。这种芯片具有可编程和实现方案容易改动等特点。由于芯片内部硬件连接关系的描述可以存放在磁盘、ROM、PROM、或EPROM中，因而在可编程门阵列芯片及外围电路保持不动的情况下，换一块EPROM芯片，就能实现一种新的功能。它具有设计开发周期短、设计制造成本低、开发工具先进、标准产品无需测试、质量稳定以及实时在检验等优点，因此，可广泛应用于产品的原理设计和产品生产之中。几乎所有应用门阵列、PLD和中小规模通用数字集成电路的场合均可应用FPGA和CPLD器件。<br>
<br>
<font size="3">&nbsp;&nbsp;&nbsp;</font> <span style="TEXT-INDENT: 30px">在数字逻辑电路设计中，分频器是一种基本电路。通常用来对某个给定频率进行分频，以得到所需的频率。整数分频器的实现非常简单，可采用标准的计数器，也可以采用可编程逻辑器件设计实现。但在某些场合下，时钟源与所需的频率不成整数倍关系，此时可采用小数分频器进行分频。比如：分频系数为2.5、3.5、7.5等半整数分频器。笔者在模拟设计频率计脉冲信号时，就用了半整数分频器这样的电路。由于时钟源信号为50MHz，而电路中需要产生一个20MHz的时钟信号，其分频比为2.5，因此整数分频将不能胜任。为了解决这一问题，笔者利用VIDL硬件描述语言和原理图输入方式，通过MAX+plus II开发软件和ALTERA公司的FLEX系列<a href="http://www.qooic.com/detail-EPF10K10LC84-4.html" target="_blank">EPF10K10LC84-4</a>型FPGA方便地完成了半整数分频器电路的设计。</span></p>
<p style="TEXT-INDENT: 0px"><b>2 小数分频的基本原理</b></p>
<p style="TEXT-INDENT: 30px">小数分频的基本原理是采用脉冲吞吐计数器和锁相环技术先设计两个不同分频比的整数分频器，然后通过控制单位时间内两种分频比出现的不同次数来获得所需要的小数分频值。如设计一个分频系数为10.1的分频器时，可以将分频器设计成9次10分频，1次11分频，这样总的分频值为：</p>
<p style="TEXT-INDENT: 30px">F=（9×10+1×11）/（9+1）=10.1</p>
<p style="TEXT-INDENT: 30px">从这种实现方法的特点可以看出，由于分频器的分频值不断改变，因此分频后得到的信号抖动较大。当分频系数为N-0.5（N为整数）时，可控制扣除脉冲的时间，以使输出成为一个稳定的脉冲频率，而不是一次N分频，一次N-1分频。<b><br>
<br>
<a href="http://wisdom.dzsc.com/data/uploadfile/2007512152625685.gif">图2 模3计数器仿真波形</a><br>
<br>
3 电路组成</b></p>
<p style="TEXT-INDENT: 30px">分频系数为N-0.5的分频器电路可由一个异或门、一个模N计数器和一个二分频器组成。在实现时，模N计数器可设计成带预置的计数器，这样可以实现任意分频系数为N-0.5的分频器。图1给出了通用半整数分频器的电路组成。</p>
<p style="TEXT-INDENT: 30px">采用VHDL硬件描述语言，可实现任意模N的计数器（其工作频率可以达到160MHz以上），并可产生模N逻辑电路。之后，用原理图输入方式将模N逻辑电路、异或门和D触发器连接起来，便可实现半整数（N-0.5）分频器以及（2N-1）的分频。</p>
<p style="TEXT-INDENT: 0px"><b>4 半整数分频器设计</b></p>
<p style="TEXT-INDENT: 30px">现通过设计一个分频系数为2.5的分频器给出用FPGA设计半整数分频器的一般方法。该2.5分频器由模3计数器、异或门和D触发器组成。<br>
<br>
<b><a href="http://wisdom.dzsc.com/data/uploadfile/2007512152628577.gif">图3 2.5分频器电路原理图</a></b><br>
<br>
<font size="3">&nbsp;&nbsp;&nbsp;</font></p>
<p style="TEXT-INDENT: 30px">该计数器可产生一个分频系数为3的分频器，并产生一个默认的逻辑符号COUNTER3。其输入端口为RESET、EN和CLK；输出端口为QA和QB。下面给出模3计数器VHDL描述代码：</p>
<p style="TEXT-INDENT: 30px">library ieee;</p>
<p style="TEXT-INDENT: 30px">use ieee.std-logic-1164.all;</p>
<p style="TEXT-INDENT: 30px">use ieee.std-logic-unsigned.all;</p>
<p style="TEXT-INDENT: 30px">entity counter3 is</p>
<p style="TEXT-INDENT: 30px"><a href="http://www.qooic.com/detail-PORT.html" target="_blank">PORT</a>(clk,reset,en:in std-logic;</p>
<p style="TEXT-INDENT: 30px">qa,qb:out std-logic);</p>
<p style="TEXT-INDENT: 30px">end counter3;</p>
<p style="TEXT-INDENT: 30px">architecture behavior of counter3 is</p>
<p style="TEXT-INDENT: 30px">signal count:std-logic-vector(1 downto 0);</p>
<p style="TEXT-INDENT: 30px">begin</p>
<p style="TEXT-INDENT: 30px">process(reset,clk)</p>
<p style="TEXT-INDENT: 30px">begin</p>
<p style="TEXT-INDENT: 30px">if reset='1'then</p>
<p style="TEXT-INDENT: 30px">count(1 downto 0)&lt;="00";</p>
<p style="TEXT-INDENT: 30px">else</p>
<p style="TEXT-INDENT: 30px">if(clk 'event and clk='1')then</p>
<p style="TEXT-INDENT: 30px">if(en='1')then</p>
<p style="TEXT-INDENT: 30px">if(count="10")then</p>
<p style="TEXT-INDENT: 30px">count&lt;="00";</p>
<p style="TEXT-INDENT: 30px">else</p>
<p style="TEXT-INDENT: 30px">count&lt;=count+1;</p>
<p style="TEXT-INDENT: 30px">end if;</p>
<p style="TEXT-INDENT: 30px">end if;</p>
<p style="TEXT-INDENT: 30px">end if;</p>
<p style="TEXT-INDENT: 30px">end if;</p>
<p style="TEXT-INDENT: 30px">end process;</p>
<p style="TEXT-INDENT: 30px">qa&lt;=count(0);</p>
<p style="TEXT-INDENT: 30px">qb&lt;=count(1)；</p>
<p style="TEXT-INDENT: 30px">end behavior；</p>
<p style="TEXT-INDENT: 30px">任意模数的计数器与模3计数器的描述结构完全相同，所不同的仅仅是计数器的状态数。上面的程序经编译、时序模拟后，在MAX+PLUS II可得到如图2所示的仿真波形。<br>
<br>
<b><a href="http://wisdom.dzsc.com/data/uploadfile/2007512152628313.gif">图4 2.5分频器仿真波形图</a></b><br>
<br>
<font size="3">&nbsp;&nbsp;&nbsp;</font></p>
<p style="TEXT-INDENT: 30px">将COUNTER3、异或门和D触发器通过图3所示的电路逻辑连接关系，并用原理图输入方式调入图形编辑器，然后经逻辑综合即可得到如图4所示的仿真波形。由图中outclk与inclk的波形可以看出，outclk会在inclk每隔2.5个周期处产生一个上升沿，从而实现分频系数为2.5的分频器。设inclk为50MHz，则outclk为20MHz。因此可见，该电路不仅可得到分频系数为2.5的分频器（outclk），而且还可得到分频系数为5的分频器（Q1）。</p>
<p style="TEXT-INDENT: 0px"><b>5 结束语</b></p>
<p style="TEXT-INDENT: 30px">选用ALTERA公司FLEX系列<a href="http://www.qooic.com/detail-EPF10K10LC84-4.html" target="_blank">EPF10K10LC84-4</a>型FPGA器件实现半整数分频后，经逻辑综合后的适配分析结果如表1所列。本例中的计数器为2位宽的位矢量，即分频系数为4以内的半整数值。若分频系数大于4，则需增大count的位宽。<b><br>
<br>
表1 半整数分频器适配分析结果</b></p>
选用器件EPF10K10LC844
<table bordercolordark="#ffffff" width="100%" bordercolorlight="#000000" border="1">
<tbody>
<tr align="middle" width="25%">
<td align="middle" width="25%">I/O延迟时间</td>
<td align="middle" width="25%">使用引脚数</td>
<td align="middle" width="25%">工作频率</td>
</tr>
<tr align="middle" width="25%">
<td align="middle" width="25%">17.7ns</td>
<td align="middle" width="25%">5/84（5.95%）</td>
<td align="middle" width="25%">68.02MHz</td>
</tr>
</tbody>
</table> ]]></description>
		<eb:creationDate>2008-07-01 08:51:40</eb:creationDate>
		<eb:modificationDate></eb:modificationDate>
    </item>
</channel>
</rss>