tag 标签: cpld

相关帖子
相关博文
  • 热度 7
    2013-9-22 14:57
    1000 次阅读|
    6 个评论
             看到身边很多搞射频的朋友,头发都白的很快,也不知道所困,最近也是被流行性感冒困扰快一周了,博客也停止未发表,实在对不起关注我的朋友,希望各位,加强锻炼身体,了解自己工作危害,注意防范,身体健健康康。          具体我想好了有如下2篇文章可以写,MCU + CPLD电路设计,MCU 地址复用原理。其他的文章待自己学习之后明白再写~~~     Remark:欢迎各位 踊跃发表自己感受电子对身体伤害及怎么预防,此博文算是收集各位信息之用,留给大家做参考,加强注意身体调养。  
  • 热度 6
    2012-12-4 14:56
    2224 次阅读|
    5 个评论
             开发的一款液晶驱动器,接收MCU过来的指令和数据进行图像显示。使用了一片可编程(带使能和PWM调节控制)的背光芯片。在CPLD设计中,上电复位状态将背光使能拉低(关闭),直到MCU端发送开显示指令后才会将背光使能拉高(开启)。          遇到的问题是这样,一上电原本背光是关闭的,直到MCU发出指令后才会开启,但是一上电(按下开关),背光闪烁了一下。效果就像闪光灯一样,也就是说,上电瞬间,背光开启又关闭,然后再开启。试着改变上电延时启动背光时间以及不同的电路板,发现都会出现类似的问题,排除代码设计问题和电路板本身的问题。 开始的时候,没有动用示波器,只是以为CPLD在上电后复位结束前的这段时间内控制背光使能信号的引脚出于三态,使能引脚对于这个三态(类似悬空)也有可能被开启。因此,猜想在背光芯片的输入端所使用的10uF电容是否太小,如果加大这个电容应该就可以大大延缓背光芯片的输入电压的时间,从而即便在复位结束后一段时间内,使能管脚仍然无法正常使能背光。这个想法确是也没有什么问题,于是并了一个10uF,效果不是那么明显,再并了一个100uF大大家伙,问题解决了。不过充电长放电也长,关闭后短时间内若再开启,现象仍然复现,问题搁浅,加大电容不是办法。 询问了背光芯片的原厂商,提出了CPLD在上电初始是高电平的解释。拿来示波器一看,确是在CPLD的复位信号刚刚上升的时候(0.5V以下),连接到背光使能的IO脚出现了一个短暂的高脉冲,这个高脉冲维持了大约250us,感觉很蹊跷,为什么复位期间IO脚出现如此的高脉冲呢?于是再找了另一个IO脚对照,一摸一样的波形。然后找了同一个BANK的VCCIO同时捕获,VCCIO上升后不久就看到那个IO脚上升,上升的波形也几乎一致。挺纳闷的,为什么CPLD在上电初始复位之时IO出现一个短暂的高脉冲呢?是电路的干扰吗?不像,于是找来Altera的FAE,一句话解决问题:Altera CPLD的IO在上电后复位前处于弱上拉状态。也难怪出现这个高电平,而且对背光产生了作用。弱上拉已成事实,那解决的办法有一个,加个下拉,电阻要远小于上拉。而看看电路,原本就有一个推荐的100K下拉电阻在呢?思考了一下,为什么不起作用呢?而且采到的高电平还是直逼3.3V呢。是不是那个弱上拉比100K小得多呢?不知道,但是换了10K的下拉后,问题解决了,无数次开关看不到闪屏现象了。再次采样,那个IO的输出不到0.33V,这么看若上拉该有100K以上吧?而和下拉100K时的压值算算还挺让人摸不着头脑的。但,这个问题也许是和负载有关吧。不过,让特权同学记住了一点,CPLD上电后复位前的IO处于弱上拉。  
  • 热度 2
    2011-8-10 23:21
    2085 次阅读|
    0 个评论
    The response regarding the creation of a periodic table for programmable logic is overwhelming. Several readers gave many useful suggestions. So, what I've done is to go through all of the offerings thus far – and add a few of my own – and to generate a combined list as shown toward the end of this blog.   You would not believe how long it's taken me to create a large version of this table containing all of the data thus far. You can see the current state of the full up version by clicking the following link: www.clivemaxfield.com/area51/periodic-table-prog-logic-v1.jpg Note that I'm not 100% happy about all of the items we have thus far. For example 8 = O = Output and 53 = I = Input are a little tame (but the only thing I could come up with was 8 = O = "Oh My Gosh!" ). Also 24 = Cr = Achronix is a bit of a push, but I can't think of anything better. As you will see, there are still quite a few blank spaces. What about "Bah, Humbug!" for 56 = Ba ? And I really think we can do better than 64 = Gd = Good . Also, although Xilinx came out of this quite well insofar as their FPGA families got a lot of mentions, we don't actually have one for their company name (any ideas?). Anyway, it would be great if you could take the time to check out the following list. Can you think of anything to fill in the blanks? Also note that we aren't locked into any of the existing items – if you can think of a better entry for any of these please let me know by adding a comment to the bottom of this blog (please, Please, PLEASE give the element number and symbol along with your proposed definition ... if you just say something like "U = You Idiot" it can take me ages to find the "U" box in the table). OK, the current list is as follows: 1 H = HardCopy 2 He "...doesn't pass the laugh test" 3 Li = ??? 4 Be = Bit Error Rate 5 B = Byte 6 C = CPLD 7 N = No NRE 8 O = Output 9 F = FPGA 10 Ne = Negative Edge 11 Na = NAND 12 Mg = Multi-Gigabit Transceiver 13 Al = Altera 14 Si = SiliconBlue 15 P = PSoC 16 S = Slack 17 Cl = Configurable Logic 18 Ar = Artix 19 k = Kintex 20 Ca = Carry Chain 21 Sc = ??? 22 Ti = Timing Analysis 23 V = Virtex 24 Cr = Achronix 25 Mn = ??? 26 Fe = Feedback 27 Co = Core 28 Ni = Nios 29 Cu = ??? 30 Zn = ZYNQ 31 Ga = Genetic Algorithm 32 Ge = Gigabit Ethernet 33 As = Asynchronous 34 Se = SERDES 35 Br = Block RAM 36 Kr = Kernigan and Richie 37 Rb = Readback 38 Sr = hift Register 39 Y = ??? 40 Zr = ??? 41 Nb = ??? 42 Mo = Module 43 Tc = Timing Closure 44 Ru = ??? 45 Rh = Radiation Hardened 46 Pd = Pipelined Design 47 Ag = QuickSilver (RIP) 48 Cd = Clock Divider 49 In = Intel FlexLogic (RIP) 50 Sn = ??? 51 Sb = ??? 52 Te = Test 53 I = Input 54 Xe = ??? 55 Cs = Constraint 56 Ba = ??? 57 La = Lattice Semiconductor 58 Ce = Clock Enable 59 Pr = Partial Reconfiguration 60 Nd = Node 61 Pm = PALASM 62 Sm = Simulation 63 Eu = Emulation 64 Gd = Good 65 Tb = Terabits Per Second 66 Dy = Dynamic Power 67 Ho = Hold Time 68 Er = Error Correction 69 Tm = Technology Mapping 70 Tb = Yottabyte 71 Lu = Lookup Table 72 Hf = Hierarchical Floorplanning 73 Ta = Tabula 74 W = ??? 75 Re = Reconfigurable Computing 76 Os = Operating System 77 Ir = Input Register 78 Pt = ??? 79 Au = ??? 80 Hg = ??? 81 TI = ??? 82 Pb = PicoBlaze 83 Bi = Bitstream 84 Po = Port 85 At = Atmel 86 Rn = Random 87 Fr = Freeman, Ross 88 Ra = RapidIO 89 Ac = Actel (now Microsemi) 90 Th = Throughput 91 Pa = ??? 92 U = ??? 93 Np = ??? 94 Pu = ??? 95 Am = Ambric (RIP) 96 Cm = Clock Manager 97 Bk = Block 98 Cf = Configuration File 99 Es = ??? 100 Fm = ??? 101 Md = ??? 102 No = ??? 103 Lr = ??? 104 Rf = Register File 105 Db = Double Data Rate 106 Sg = Speed Grade 107 Bh = ??? 108 Hs = ??? 109 Mt = ??? 110 Ds = Digital Signal Processing 111 Rg = Register Any suggestions will be very much appreciated...  
  • 热度 1
    2011-5-12 15:11
    2003 次阅读|
    0 个评论
          CPLD+SD卡驱动2.8寸TFT真彩屏开发板采用嵌入式片上系统C8051F340(51内核)为控制核心,通过SPI接口控制外扩SD卡,利用SD作为存储媒质为彩屏提供存储数据场所,实现了对SD卡的读取控制;同时扩展了CPLD,实现CPU与彩屏间的时序控制要求,学习者可以学习单片机同CPLD的系统控制,通信等技能,是学习嵌入式片上系统及CPLD和SD卡控制的理想工具。        CPU采用C8051F340 (1)高速流水线结构的8051 兼容的CIP-51 内核,最高48MIPS 执行速度; (2)全速非侵入式的系统调试接口(片内,C2 接口); (3)真正10 位200ksps 的多通道单端/差分ADC,带模拟多路器; (4)高精度可编程的12MHz 内部震荡器; (5)64KB 字节可在系统编程的FLASH 存储器;4352(4096+256)字节的片内RAM; (6)USB 2.0通信接口,支持全速12Mbps通信和低速1.5Mbps通信; (7)硬件实现的SPI,SMBus/IIC 和2 个UART 串行接口;40 个I/O 端口; (8)具有5 个捕捉/比较模块的可编程计数器/定时器阵列; (9)片内上电复位,看门狗定时器,2 个电压比较器,VDD 监视器和温度传感器;          CPLD 1.  高密度。XC9500系列器件内有36~288个宏单元(每个宏单元内包含1个寄存器), 800~6400个等效门,封装引脚44~352个。 2.  高性能。XC9500系列器件所有信号都有相同的延时,而与其路径无关。其引脚的传输时 间Tpd最快可达3.5ns,相应的计数器频率可达125MHz。XC9500XL CPLD器件Tpd最快可达4ns, 相应的计数器频率可达200MHz。 3.  在系统可编程。所有XC9500系列器件均含有JTAG测试接口电路,具有5V或3.3V在系统可 编程ISP能力,具有最小1万次编程/擦除次数。在系统编程通过边界扫描测试引脚进行。 4.  5V和3.3V工作电压混合模式 5.  增强引脚锁定功能。XC9500系列器件的结构特性着重系统内编程的要求,增强的引脚锁 定功能可以避免重做昂贵的电路板。       2.8寸TFT真彩触摸液晶屏 1.  支持8/16位总线接口 2.  320*240大屏幕 3.  26万色TFT-LCD 4. 预留TSC2046(4线触摸屏控制器),SPI接口        接口 1.  标准DB9串行接口 2.  JTAG调试接口 3.  USB2.0数据通信接口 4.  CPU及CPLD空闲管脚全部引出 5.  通过xilinx CPLD 下载线直接与PC机通讯,可进行数据下载、在线编程等         软件资源 ★  单片机读取SD卡数据的程序实现 ★  基本的UART 字符串输出程序 ★  单片机驱动彩屏程序实现 ★  CPLD实验,学习时序电路及逻辑电路设计原理 ★  CPLD设计工程文件输入,原理输入方法,VHDL、VeriLog输入法,例程 ★  CPLD在线编译,仿真,下载软件的设置,使用,下载教程 ★  提供USB驱动程序包括HID(人体工程学设备)驱动程序代码,BUILK(批量传输)驱动程 序代码,INTERRUPT(中断传输)驱动程序代码,及这几种驱动的上位机程序代码 ★  提供完整的Keil C51源代码的项目工程文件 ★  提供完全可用齐全的软件:主软件xilinx ISE6 仿真软件modelsim6.2 ★  提供VHDL及原理图输入设计的CPLD项目工程文件 ★  提供相关测试软件,工具软件,PROTEL 99SE版本原理图文件 ★  免费赠送C8051F340全套设计源码,包括串口程序设计,USB程序设计,定时器程序设计,A/D 转换程序设计,网络扩展接口设计,PWM设计等等.         实验项目 1.    认识TFT彩色显示屏,点阵大小,像素比例,色彩范围 2.    熟练应用位图提取软件,制作一张你喜欢的图片,替换掉程序中的图片文件,编译下 载,看看你的杰作 3.    阅读C51程序代码,了解程序的工作流程,寄存器设置是关键,主要涉及I/O的输入输 出设置,EMIF设置等 4.    学习如何把8位的数据合成16位数据接口,从而学习到不同总线宽度的设备如何协调工 作 5.    CPLD实验,学习时序电路及逻辑电路设计原理 6.    CPLD设计工程文件输入,原理输入方法,VHDL、VeriLog输入法,例程 7.    CPLD在线编译,仿真,下载软件的设置,使用,下载教程 8.    串口通信实验 9.    SPI方式读取SD卡 10.    C8051F340内含64K Flashi在线擦除,烧写实验 11.   C8051F340在线引导BOOT实验,通过串口更新应用程序,产品设计可以以此远程升级程 序。 12.   USB--HID(人体工程学设备)通信程序实验 13.   USB--中断传输实验 14.   USB--块传输实验 15.   定时器实验 16.   外部中断实验 图像数据获取设置:                       将生成的图像数据保存,如图                         将SD卡插入开发板即可显示相应的图片           销售清单 1.  CPLD+SD卡驱动2.8寸TFT真彩屏开发板一块 2.  2.8寸TFT真彩触摸液晶屏一个 2.  5V开关电源一个 3.  串口延长线一条 4.  配套光盘一张:常用开发软件、学习板电路图纸、全部示例程序、相关芯片资料、入门 资料        QQ在线咨询:  493743672             MSN: lechengdz@126.com       联系电话: 020-88378279    13422219273     乐诚科技: http://www.lcemb.cn/Index.html
  • 热度 1
    2010-12-23 09:22
    1231 次阅读|
    0 个评论
    library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; -- Uncomment the following lines to use the declarations that are -- provided for instantiating Xilinx primitive components. --library UNISIM; --use UNISIM.VComponents.all; entity division5 is port (clk: in std_logic; out1: out std_logic); end division5; architecture Behavioral of division5 is signal division2,division4 :std_logic; signal temp1,temp2:integer range 0 to 10; begin p1:process(clk) begin if rising_edge(clk) then temp1=temp1+1; if temp1=2 then division2='1'; elsif temp1=4 then division2='0'; temp1=0; end if; end if; end process p1; p2:process(clk) begin if clk'event and clk='0' then temp2=temp2+1; if temp2=2 then division4='1'; elsif temp2=4 then division4='0'; temp2=0; end if; end if; end process p2; p3:process(division2,division4) begin out1=division2 or division4; end process p3; end Behavioral;
相关资源
广告