⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 address decoder.pld

📁 ad实例文件
💻 PLD
字号:
Name            Address Decoder;
Partno          ISADecoder1;
Revision        01;
Date            20 November, 1996;
Designer        Altium Employees;
Company         Altium Ltd;
Assembly        PC ISA Bus 4 port serial card Address Decoder;
Location        U10;
Device          g22v10;

/************************************************************************/
/* This device decodes the PC adress bus and generates enable signals   */
/* for 4 serial ports. The base address is set by comparing A10-A5      */
/* of the ISA bus against 6 bits derived from dip switch S1. When these */
/* are equal and adress enable (AEN) is low the Card Select signal is   */
/* generated. Address bits PA4 & PA3 are used to select uart port as:   */
/*                                                                      */
/*  CardSelect & PA4 = 0, PA3 = 0 => Port A                             */
/*  CardSelect & PA4 = 0, PA3 = 1 => Port B                             */
/*  CardSelect & PA4 = 1, PA3 = 0 => Port C                             */
/*  CardSelect & PA4 = 1, PA3 = 1 => Port D                             */
/*                                                                      */
/************************************************************************/

/************************************************************************/
/* Allowable Target Device Types:       GAL 22V10                       */
/************************************************************************/

/** Inputs **/
pin 1              = !aen ;            /* PC's address enable strobe   */
pin [2..7]         = [a10..5] ;        /* system address pins a5 - a10 */
pin [8..9]         = [pa4..3] ;        /* system address pins a3 - a4  */
pin [10,11,13..16] = [sw10..5] ;       /* dip switch address  a5 - a10 */

/** Outputs **/

/* Pin 17, Pin 18 spare */
pin 19     = CardEnable ;
pin 20     = !portD ;                   /* port D enable                */
pin 21     = !portC ;                   /* port C enable                */
pin 22     = !portB ;                   /* port B enable                */
pin 23     = !portA ;                   /* port A enable                */

/** Declarations and Intermediate Variable Definitions  **/

field   CardAddress   = [a10..5] ;
field   SwitchAddress = [sw10..5];

/** Logic Equations **/

/* Field comparison operation == compares two fields and generates TRUE
only if the two fields are identical. The two field variables must
have the same number of elements (bits).*/

CardEnable = (CardAddress == SwitchAddress) & aen ;

portA            = !pa4 & !pa3  & CardEnable;
portB            = !pa4 &  pa3  & CardEnable;
portC            =  pa4 & !pa3  & CardEnable;
portD            =  pa4 &  pa3  & CardEnable;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -