采用现场可编程门阵列(FPGA)可以快速实现数字电路,但是用于生成FPGA编程的比特流文件的CAD工具在编制大规模电路时常常需要数小时的时间,以至于许多设计者甚至通过在给定FPGA上采用更多的资源,或者以牺牲电路速度为代价来提高编制速度。电路编制过程中大部分时间花费在布线阶段,因此有效的布线算法能极大地减少布线时间。 许多布线算法已经被开发并获得应用,其中布尔可满足性(SAT)布线算法及几何查找布线算法是当前最为流行的两种。然而它们各有缺点:基于SAT的布线算法在可扩展性上有很大缺陷;几何查找布线算法虽然具有广泛的拆线重布线能力,但当实际问题具有严格的布线约束条件时,它在布线方案的收敛方面存在很大困难。基于此,本文致力于探索一种能有效解决以上问题的新型算法,具体研究工作和结果可归纳如下。 1、在全面调查FPGA结构的最新研究动态的基础上,确定了一种FPGA布线结构模型,即一个基于SRAM的对称阵列(岛状)FPGA结构作为研究对象,该模型仅需3个适合的参数即能表示布线结构。为使所有布线算法可在相同平台上运行,选择了美国北卡罗来纳州微电子中心的20个大规模电路作为基准,并在布线前采用VPR399对每个电路都生成30个布局,从而使所有的布线算法都能够直接在这些预制电路上运行。 2、详细研究了四种几何查找布线算法,即一种基本迷宫布线算法Lee,一种基于协商的性能驱动的布线算法PathFinder,一种快速的时延驱动的布线算法VPR430和一种协商A
上传时间: 2013-05-18
上传用户:ukuk
信号与信息处理是信息科学中近几年来发展最为迅速的学科之一,随着片上系统(SOC,System On Chip)时代的到来,FPGA正处于革命性数字信号处理的前沿。基于FPGA的设计可以在系统可再编程及在系统调试,具有吞吐量高,能够更好地防止授权复制、元器件和开发成本进一步降低、开发时间也大大缩短等优点。然而,FPGA器件是基于SRAM结构的编程工艺,掉电后编程信息立即丢失,每次加电时,配置数据都必须重新下载,并且器件支持多种配置方式,所以研究FPGA器件的配置方案在FPGA系统设计中具有极其重要的价值,这也给用于可编程逻辑器件编程的配置接口电路和实验开发设备提出了更高的要求。 本论文基于IEEE1149.1标准和USB2.0技术,完成了FPGA配置接口电路及实验开发板的设计与实现。作者在充分理解IEEE1149.1标准和USB技术原理的基础上,针对Altcra公司专用的USB数据配置电缆USB-Blaster,对其内部工作原理及工作时序进行测试与详细分析,完成了基于USB配置接口的FPGA芯片开发实验电路的完整软硬件设计及功能时序仿真。作者最后进行了软硬件调试,完成测试与验证,实现了对Altera系列PLD的配置功能及实验开发板的功能。 本文讨论的USB下载接口电路被验证能在Altera的QuartusII开发环境下直接使用,无须在主机端另行设计通信软件,其兼容性较现有设计有所提高。由于PLD(Programmable Logic Device)厂商对其知识产权严格保密,使得基于USB接口的配置电路应用受到很大限制,同时也加大了自行对其进行开发设计的难度。 与传统的基于PC并口的下载接口电路相比,本设计的基于USB下载接口电路及FPGA实验开发板具有更高的编程下载速率、支持热插拔、体积小、便于携带、降低对PC硬件伤害,且具备其它下载接口电路不具备的SignalTapII嵌入式逻辑分析仪和调试NiosII嵌入式软核处理器等明显优势。从成本来看,本设计的USB配置接口电路及FPGA实验开发板与其同类产品相比有较强的竞争力。
上传时间: 2013-06-07
上传用户:2525775
安装eVC4和Service Pack(最终版本为SP4) 3. 安装SDK 4. 安装WINCE 5.0. 注意事项 1. 安装WinCE 5.0 with Platform Builder 需要系统里面已经安装
上传时间: 2013-07-09
上传用户:362279997
FPGA实验:用于检测输入的二进制系列,连续输入4个0或1,输出1,否则输出0。用按键模拟开关输入
上传时间: 2013-08-15
上传用户:qwer0574
色环电阻识别小程序V1.0--功能说明: 1、能直接根据色环电阻的颜色计算出电阻值和偏差; 2、能根据电阻值,反标电阻颜色; 3、支持四环、五环电阻计算; 4、带万用表直读数; 色环电阻识别小程序--使用说明: 1、选择电阻环数;(四环电阻或五环电阻) 2、如果是“色环转阻值”则:鼠标点击对应环的颜色,然后点按钮“色环→阻值” 3、如果是“阻值转色环”则:输入相应阻值、单位、精度,点按钮“阻值→色环” 国家标称电阻值说明: ★E6±20%系列:1.0、1.5、2.2、3.3、4.7、6.8 E12±10%系列:1.0、1.2、1.5、1.8、2.2、2.7、3.3、3.9、4.7、5.6、6.8、8.2、9.1 E24 I级±5%:1.0、1.1、1.2、1.3、1.5、1.6、1.8、2.0、2.2、2.4、2.7、3.0、3.3、3.6、3.9、4.3、4.7、5.1、5.6、6.2、6.8、7.5、8.2、9.1 使用注意事项: 1、请不要带电和在路测试电阻,这样操作既不安全也不能测出正确阻值; 2、请不要用手接触到电阻引脚,因为人体也有电阻,会使测试值产生误差; 3、请正确选择万用表的档位(电阻档)和量程(200、20K、2M量程)
上传时间: 2014-12-24
上传用户:pinksun9
N79E8132移动电源方案功能介绍 本方案的特色是采用新唐生产的兼容MCS-51核心的N79E8132单片机,可以在-40度到85度温度范围内安全工作,具备4K FLASH,4K DATAFLASH,512B RAM,高精度10位ADC,内置带隙电压可省去外部参考电压,内置22.1184M、11.0592M振荡器,并具有可分频的时钟供单片机核心使用,可以根据性能需要灵活选择工作时钟,提高工作效率,具备外部中断、按键中断,可以灵活实现单片机进入掉电模式后的唤醒功能,具备停机、掉电模式,在产品不使用的时候进入掉电模式,实现环保节能,支持ICE仿真工具,ICP、串口ISP烧写,开发硬件成本低。软件开发可以使用KEIL C,容易上手。 充电部分采用通用的TP4056,价格便宜,容易采购,可以通过外部元件灵活配置充电电流。 升压部分采用日本精工的S8365,工作频率1.2M,外置MOS,容易实现大电流,高效率,电感小型化节省成本。 技术参数 1. 输入: USB 5V/1A ,充电电流可达500-850mA,可根据需要进行设置 2. 输出: USB 5V/1A,效率最高可达到90%以上,可根据需要提高到2A 3. 电量指示: (可根据需要自行设定) 四灯全亮 75%-100% 三个指示灯亮 50%-75% 两个灯亮 25%-55% 一个指示灯亮 5%-25% 无指示灯亮 5%以下 4.充电指示: 25%以下 一个指示灯闪 25%-50% 一个指示灯亮 第二个闪 50%--75% 二个指示灯亮 第三个闪 75%-99% 三个指示灯亮 第四个闪 100% 四个指示灯长亮。 5.智能保护: 低电保护:电池电压低于3V时自动关闭升压 放电保护:放电电流大于额定电流自动关闭升压输出(1A模式设置为1.5A保护) 温度保护:检测电池温度,高于55度自动关闭升压输出(可选) 低电流关机:当外部设备的电流需求小于100mA时,关闭升压输出以节省电力。 6.按键操作: 短按按键,4个LED显示剩余电量3~5秒自动关闭 按键长按, LED点亮,闪烁3次后开启升压,显示电量,30秒内没有连接外部设备自动关机。 开机状态长按,点亮照明LED,再长按熄灭照明LED,照明LED点亮状态不会进入自动关机 带照明功能。(可选)8.原理图 9.BOM 序号 类型 参数 位号 封装 数量 1 IC N79E8132AS16 U2 SO16 1 2 IC S8365C U4 SOT26 1 3 IC TP4056 U3 SO8M1T 1 4 贴片电阻 0.1R R25 1206 1 5 贴片电阻 1A R28 1812 1 6 贴片电阻 22R R24 0603 1 7 贴片电阻 22R R30 0805 1 8 贴片电阻 100R R3 0805 1 9 贴片电阻 1K R1 R11 R12 R13 R14 0603 5 10 贴片电阻 2.4K R4 0603 1 11 贴片电阻 10K R6 R15 R21 R22 R23 R29 R31 R32 0603 8 12 贴片电阻 43.2KF R46 0603 1 13 贴片电阻 49.9KF R47 R49 0603 2 14 贴片电阻 68KF R27 0603 1 15 贴片电阻 75KF R48 0603 1 16 贴片电阻 100K R2 R16 0603 2 17 贴片电阻 220KF R17 R26 0603 2 18 贴片电阻 1M R5 R7 R18 0603 3 19 贴片电容 47P C1 C7 0603 2 20 贴片电容 103 C4 C8 C9 C13 C14 0603 5 21 贴片电容 104 C2 C5 C11 C16 C17 0603 5 22 贴片电容 226 C3 C6 C10 C12 C15 1206 5 23 贴片电感 3.6UH/3A L1 WBL076 1 24 二极管 1N4148 D1 SOD323 1 25 LED Blue D2 D3 D4 D5 D6 LED 5 26 二极管 SK34 D7 DO214 1 27 MOS 2N7002 Q2 Q5 SOT23 2 28 MOS AO3400 Q3 SOT23 1 29 MOS AO3401 Q4 SOT23 1 30 USB USB J3 USBAFRSMD1 1 31 USB_MINI USB_MINI J4 USBMINIMICRO 1 32 SWPB SWPB S1 SW7X7H 1 10.部件功能说明
上传时间: 2013-11-16
上传用户:sxdtlqqjl
精确度0.05%满刻度±1位数(Accuracy 0.05%F.S.±1digit) 可测量交直流电流/交直流电压/电位计/传送器/Pt-100/荷重元/电阻等信号(Measuring DCA/DCV/ACA/ACV/Potentiometer/Transmitter/Pt-100/Load Cell/Resistor/etc……) 显示范围0-19999可任意规划(Programmable rate 0 to 1999 digit) 小数点可任意规划(Decimal point can be modified) 尺寸小,稳定性高(Dimension small & High stability)
上传时间: 2014-01-25
上传用户:RQB123
淮南煤矿区地跨淮河两岸,辖有大通、田家庵、谢家集、八公山、潘集5个行政区,人口106.30万,是国家大型煤炭生产基地之一。淮南供电始于民国19年(1930年)4月,当时仅有1台7.5千瓦直流发电机发电,供九龙岗矿场地面照明。民国25年,九龙岗东西两矿,有1路1.70公里的2.3千伏送电线相联,各装1台10千伏安变压器。民国27年后,日本侵略军占领淮南,在大通、九龙岗两区建矿采煤,掠夺煤炭资源,民国32年,建成下窑(田家庵)发电所,架设经大通至九龙岗22千伏同杆(铁塔)双固路输电线,和大通、九龙岗2个变电所,以3.3千伏向矿井配电。抗日战争胜利后,民国36年4月,淮南路矿公司架设田家庵至八公山22千伏输电线。至此22千伏线路全长37.10公里,变电所4个,降压变压器11台,总容量7500千伏安。民国37年售电量1189.60万千瓦·时,主要供煤矿用电。建国后,先后对谢一、谢二、谢三矿和李咀孜矿进行勘探建井。1954年,原22千伏线路和变电所升压为35千伏供电。1958年起以110千伏电压供电。至1972年,发展成为工商业区和政治文化中心的东部地区,也升压为110千伏供电。1975年淮河北岸潘集矿区开始建设,负荷中心北移,由田家庵电厂出线跨越淮河至潘集矿区的110千伏输变电工程同时投运。1978~1982年间,淮南矿区又先后建成田家庵电厂经西山变电所至淮河北岸芦集变电所的220千伏系统。1985年,田家庵、洛河电厂装机总容量达90.10万千瓦,市内供电网相应加强,全矿区已形成主要由田家庵电厂110千伏母线和220千伏西山变电所、芦集变电所3点分片供电,以220千伏和110千伏高压配电网联合供电的格局。同时,一些大型厂矿都有自备35千伏及以上变电所,并向附近中小企业转供电,形成东部田家庵、大通两区,中部望峰岗地区,西部谢集、八公山两区,淮河北岸潘集区组成的4个公用中低压配电网络。1985年,全市最高负荷19.55万千瓦,供电量16亿多千瓦·时。其中,煤炭工业最高负荷9.34万千瓦,用电量4.99亿千瓦·时,占全市用电量的三分之一。
标签: 矿区供电
上传时间: 2013-10-12
上传用户:fandeshun
附件为:LCD12864显示汉字和数字的程序与电路 /* 自定义延时子函数 */ void delayms(uchar z) { int x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } /* 判断LCD忙信号状态 */ void buys() { int dat; RW=1; RS=0; do { P0=0x00; E=1; dat=P0; E=0; dat=0x80 & dat; } while(!(dat==0x00)); } /* LCD写指令函数 */ void w_com(uchar com) { //buys(); RW=0; RS=0; E=1; P0=com; E=0; } /* LCD写数据函数 */ void w_date(uchar date) { //buys(); RW=0; RS=1; E=1; P0=date; E=0; } /* LCD选屏函数 */ void select_screen(uchar screen) { switch(screen) { case 0: //选择全屏 CS1=0; CS2=0; break; case 1: //选择左屏 CS1=0; CS2=1; break; case 2: //选择右屏 CS1=1; CS2=0; break; /* case 3: //选择右屏 CS1=1; CS2=1; break; */ } } /* LCDx向上滚屏显示 */ void lcd_rol() { int x; for(x=0;x<64;x++) { select_screen(0); w_com(0xc0+x); delayms(500); } } /* LCD清屏函数:清屏从第一页的第一列开始,总共8页,64列 */ void clear_screen(screen) { int x,y; select_screen(screen); //screen:0-选择全屏,1-选择左半屏,2-选择右半屏 for(x=0xb8;x<0xc0;x++) //从0xb8-0xbf,共8页 { w_com(x); w_com(0x40); //列的初始地址是0x40 for(y=0;y<64;y++) { w_date(0x00); } } } /* LCD显示汉字字库函数 */ void lcd_display_hanzi(uchar screen,uchar page,uchar col,uint mun) { //screen:选择屏幕参数,page:选择页参数0-3,col:选择列参数0-3,mun:显示第几个汉字的参数 int a; mun=mun*32; select_screen(screen); w_com(0xb8+(page*2)); w_com(0x40+(col*16)); for ( a=0;a<16;a++) { w_date(hanzi[mun++]); } w_com(0xb8+(page*2)+1); w_com(0x40+(col*16)); for ( a=0;a<16;a++) { w_date(hanzi[mun++]); } } /* LCD显示字符字库函数 */ void lcd_display_zifuk(uchar screen,uchar page,uchar col,uchar mun) { //screen:选择屏幕参数,page:选择页参数0-3,col:选择列参数0-7,mun:显示第几个汉字的参数 int a; mun=mun*16; select_screen(screen); w_com(0xb8+(page*2)); w_com(0x40+(col*8)); for ( a=0;a<8;a++) { w_date(zifu[mun++]); } w_com(0xb8+(page*2)+1); w_com(0x40+(col*8)); for ( a=0;a<8;a++) { w_date(zifu[mun++]); } } /* LCD显示数字字库函数 */ void lcd_display_shuzi(uchar screen,uchar page,uchar col,uchar mun) { //screen:选择屏幕参数,page:选择页参数0-3,col:选择列参数0-7,mun:显示第几个汉字的参数 int a; mun=mun*16; select_screen(screen); w_com(0xb8+(page*2)); w_com(0x40+(col*8)); for ( a=0;a<8;a++) { w_date(shuzi[mun++]); } w_com(0xb8+(page*2)+1); w_com(0x40+(col*8)); for ( a=0;a<8;a++) { w_date(shuzi[mun++]); } } /* LCD初始化函数 */ void lcd_init() { w_com(0x3f); //LCD开显示 w_com(0xc0); //LCD行初始地址,共64行 w_com(0xb8); //LCD页初始地址,共8页 w_com(0x40); //LCD列初始地址,共64列 } /* LCD显示主函数 */ void main() { //第一行 int x; lcd_init(); //LCD初始化 clear_screen(0); //LCD清屏幕 lcd_display_shuzi(1,0,4,5); //LCD显示数字 lcd_display_shuzi(1,0,5,1); //LCD显示数字 lcd_display_hanzi(1,0,3,0); //LCD显示汉字 lcd_display_hanzi(2,0,0,1); //LCD显示汉字 //LCD字符汉字 lcd_display_hanzi(2,0,1,2); //LCD显示汉字 //第二行 lcd_display_zifuk(1,1,2,0); //LCD显示字符 lcd_display_zifuk(1,1,3,0); //LCD显示字符 lcd_display_zifuk(1,1,4,0); //LCD显示字符 lcd_display_zifuk(1,1,5,4); //LCD显示字符 lcd_display_shuzi(1,1,6,8); //LCD显示字符 lcd_display_shuzi(1,1,7,9); //LCD显示字符 lcd_display_shuzi(2,1,0,5); //LCD显示字符 lcd_display_shuzi(2,1,1,1); //LCD显示字符 lcd_display_zifuk(2,1,2,4); lcd_display_zifuk(2,1,3,1); lcd_display_zifuk(2,1,4,2); lcd_display_zifuk(2,1,5,3); //第三行 for(x=0;x<4;x++) { lcd_display_hanzi(1,2,x,3+x); //LCD显示汉字 } for(x=0;x<4;x++) { lcd_display_hanzi(2,2,x,7+x); //LCD显示汉字 } //第四行 for(x=0;x<4;x++) { lcd_display_zifuk(1,3,x,5+x); //LCD显示汉字 } lcd_display_shuzi(1,3,4,7); lcd_display_shuzi(1,3,5,5); lcd_display_shuzi(1,3,6,5); lcd_display_zifuk(1,3,7,9); lcd_display_shuzi(2,3,0,8); lcd_display_shuzi(2,3,1,9); lcd_display_shuzi(2,3,2,9); lcd_display_shuzi(2,3,3,5); lcd_display_shuzi(2,3,4,6); lcd_display_shuzi(2,3,5,8); lcd_display_shuzi(2,3,6,9); lcd_display_shuzi(2,3,7,2); while(1); /* while(1) { // LCD向上滚屏显示 lcd_rol(); } */ }
上传时间: 2013-11-08
上传用户:aeiouetla
单片机双工通信时用到的校验方式 Ø奇偶校验原理:通过计算数据中“1”的个数是奇数还是偶数来判断数据的正确性。在被校验的数据后加一位校验位或校验字符用作校验码实现校验。 Ø校验位的生成方法 Ø奇校验:确保整个被传输的数据中“1”的个数是奇数个,即载荷数据中“1”的个数是奇数个时校验位填“0”,否则填“1”; 偶校验:确保整个被传输的数据中“1”的个数是偶数个,即载荷数据中“1”的个数是奇数个时校验位填“1”,否则填“0”
上传时间: 2013-10-16
上传用户:天诚24