本发明涉及一种可编程序集成电路领域。 通用阵列逻辑编程装置是一种可编程序集成电路,编程后可实现特定的逻辑功能,用于数字电路系统。
目前国际上有多种通用阵列逻辑编程装置,例如台湾的Rain Bow的EXPRO编程器,它采用一块PC总线兼容的专用接口卡,通过一条并行电缆接入编程装置,编程装置由两块印刷电路板上的专用电路及一个编程插座组成。这些通用阵列逻辑编程器件的编程器都能很好地工作,但成本较高,结构复杂,且要采用一些专用器件,这些都给维修和推广工作带来一定的困难,并给国内使用通用阵列逻辑编程装置的用户带来不便。
本发明的目的在于提供一种与现有技术相比更为简单,结构更为合理,性能可靠,价格低廉,适于国内推广使用的通用阵列逻辑编程装置,它是由非专用器件组成。
本发明所提供的通用阵列逻辑编程装置是这样实现的:如图1所示,本装置由电源变换电路1、编程操作电路2、电压控制电路3、RS232总线驱动电路U2和核心控制电路U1五部分组成。本装置采用广泛使用的价廉的MCS48系列单片机(如8748,8048,8035,8049,8749等芯片)作为核心控制器。通过RS232总线驱动电路U2与上层主机(如IBM-PC机或其兼容机)联机通信,在通用阵列逻辑编程装置控制下采用串行通信形式。本发明开发的通用阵列逻辑编程软件固化在MCS48系列单片机的内部或外部存贮器中,它对电子开关进行控制,以实现对活动编程插座芯片的读写和加密操作。另外,将本装置的MCS48系列单片机的定时器输入端T1(即第39管脚),作为RS-232串行通信的接收端RXD,将该芯片的另一条I/O线P27(即第38管脚),作为串行数据的发送端TXD,MCS48系列单片机硬件不支持串行通信,故本装置的通信方式由上面提到的通用阵列逻辑编程软件支持。以一片或多片标准RS232总线电平转换芯片驱动RS232总线。将用于本装置核心控制器的MCS48系列单片机P1口中的P10,P11,P12,P16和P17用作编程过程中的控制信号Sclk,Sdin,Sdout,/STR,P/V以实现对活动编程插座芯片进行各种编程操作。此外,本装置使用的活动编程插座,其供电电压Vcc和编程电压Edit采用晶体管或其它开关器件予以控制,在不对通用阵列器件进行编程操作时可切断电源以保护器件。
本装置仅对通用阵列逻辑进行编程,此外,它不涉及其它可编程器件。
本发明的附图有:
图1 是本发明的通用阵列逻辑编程装置方框图。
图2 是本发明的通用阵列逻辑编程装置电路图。
下面结合图2说明本发明地优选实施例。
实施例中的核心控制器由MCS48系列单片机中的8749芯片担任。6MHz晶体管振荡器OSC为其提供时钟。P10,P11,P12,P16和P17分别接在活动编程插座S1和S2上,并与通用阵列逻辑编程器件中的Sclk,Sdin,Sdout,/STR和P/V相对应。P13和P14通过OC门(U3中的两个门)驱动两个发光二极管D1和D2,以便指示相应的编程插座位置。DB0,DB1,DB2,DB3,DB4,DB5,DB6,DB7分别向编程插座S1和S2提供地址信号。P24和P25通过四个OC门(U3中的其余四个门)接电子开关以控制编程电压的加载过程,通用阵列逻辑编程软件被固化在MCS48系列单片机8749芯片内部或外部存贮器EPROM上
变压器B通过桥式整流将交流220V变成20V(100MA)和10V(700MA)的两组电压。一组经LM7805稳压成+5V输出,另一组通过LM317输出给编程电压。
RS232总线驱动电路U2由单一串行接口转换M232芯片担任。电子开关由三个PNP三极管G1,G2,G3组成,它们受核心控制电路U1的P24和P25控制,以便对编程的通用阵列逻辑编程器件进行保护和加压。
本优选实施例的通用阵列逻辑编程装置仅由三片数字集成电路,两片三端稳压器和少量的分立元件构成。连同编程插座和电源全部安装在一块90×198平方毫米的印刷电路板上,其结构极为简单,因此成本低,可靠性高,而且整个编程软件都由四通公司独立开发,因此,可以很容易地将该装置的功能进行升级。
本优选实施例的通用阵列逻辑编程装置在电路图图2中的各符号说明如下:
符号说明符号说明U1U3S1OSCIC2PR3R1R3R6,R7,R8C1,C2,C3C6EditSdin/STRB8749芯片7406芯片编程插座20PIN芯片(16V8)晶体振荡器LM317芯片排电阻10K×1018K1K10K50μf/25V10μf/15V编程电压16.5v编程数据输入信号编程启动信号变压器U2D1,D2S2IC1PR1,PR2C1,C2,C3R2R4,R5R9,R10C4,C5C7,C8,C9,C10SclkSdoutP/VM232芯片发光二极管编程插座24PIN芯片(20V8)LM7805芯片排电阻10K×8三极管PNP1.5K10K1K10PF10μf/20V编程时钟信号编程数据输出信号编程或校验