addr.abl

来自「 M4A564/32 CPLD VHDLA程序」· ABL 代码 · 共 65 行

ABL
65
字号
MODULE addr

TITLE 'addr mux'

d0..d7 pin 24,25,26,27,28,29,30,31;
d0..d7 istype 'com,buffer';

aa8..aa15 pin 43,42,41,40,39,38,37,36;

a8..a15 pin 2,3,4,5,6,7,8,9;
a8..a15 istype 'com,buffer';

diskcs,ramcs,clkcs,lcdcs,io0,io1,bk pin 14,15,16,17,18,19,20;
diskcs,ramcs,clkcs,lcdcs,io0,io1,bk istype 'com,buffer';

ale,wr pin 33,11;

fat0..fat7 node istype 'reg_g';
fatenw node istype 'com,keep';

a0..a7 node istype 'reg_g';

c,z,x=.c.,.k.,.x.;

a=[a7..a0];
ah=[a15..a8];
d=[d7..d0];
aa=[aa15..aa8];
fat=[fat7..fat0];

equations

  a := d ;
  a.lh = ale ;

  fatenw = (a==^h00) & (aa==^hfc) & !wr ;
  fat := d ;
  fat.lh = fatenw ;

  !diskcs = (aa==^hfe) ;
  !ramcs = !aa15 ;
  !clkcs = (aa==^hfd) ;
  !lcdcs = (aa==^hfc) & !a7 & !a6 & !a5 & !a4 & !a3 & !a2 & a1 ;
  !io0 = (aa==^hfc) ;
  !io1 = (aa==^hfb) ;

  ah = (aa==^hfe) & fat # !(aa==^hfe) & aa ;

test_vectors
  ([aa15,aa14,aa13,aa12,aa11,aa10,aa9,aa8,d7,d6,d5,d4,d3,d2,d1,d0,ale,wr]->[a15,a14,a13,a12,a11,a10,a9,a8,diskcs,ramcs,clkcs,lcdcs,io0,io1])
   [ x,   x,   x,   x,   x,   x,   x,  x,  0, 0, 0, 0, 0, 0, 0, 0, c, 1]->[ x,  x,  x,  x,  x,  x,  x, x,   x,    x,    x,    x,   x,  x ];
   [ 1,   1,   1,   1,   1,   1,   0,  0,  0, 1, 0, 1, 0, 1, 0, 1, 0, z]->[ x,  x,  x,  x,  x,  x,  x, x,   x,    x,    x,    x,   x,  x ];
   [ 1,   1,   1,   1,   1,   1,   1,  0,  1, 0, 1, 0, 1, 0, 1, 0, 0, z]->[ x,  x,  x,  x,  x,  x,  x, x,   x,    x,    x,    x,   x,  x ];
   [ x,   x,   x,   x,   x,   x,   x,  x,  0, 0, 0, 0, 0, 0, 1, 1, c, 1]->[ x,  x,  x,  x,  x,  x,  x, x,   x,    x,    x,    x,   x,  x ];
   [ 1,   0,   0,   0,   0,   0,   0,  0,  0, 0, 1, 1, 1, 1, 1, 1, 0, z]->[ x,  x,  x,  x,  x,  x,  x, x,   x,    x,    x,    x,   x,  x ];
   [ x,   x,   x,   x,   x,   x,   x,  x,  1, 0, 1, 1, 1, 1, 1, 1, c, 1]->[ x,  x,  x,  x,  x,  x,  x, x,   x,    x,    x,    x,   x,  x ];
   [ 1,   0,   0,   0,   0,   0,   0,  0,  0, 0, 1, 1, 1, 1, 1, 1, 0, z]->[ x,  x,  x,  x,  x,  x,  x, x,   x,    x,    x,    x,   x,  x ];
   [ 1,   0,   0,   0,   0,   0,   0,  1,  0, 0, 1, 1, 1, 1, 1, 1, 0, 1]->[ x,  x,  x,  x,  x,  x,  x, x,   x,    x,    x,    x,   x,  x ];
   [ x,   x,   x,   x,   x,   x,   x,  x,  0, 0, 0, 0, 0, 0, 0, 0, c, 1]->[ x,  x,  x,  x,  x,  x,  x, x,   x,    x,    x,    x,   x,  x ];
   [ 1,   0,   0,   0,   0,   0,   0,  0,  1, 0, 1, 0, 1, 0, 1, 0, 0, z]->[ x,  x,  x,  x,  x,  x,  x, x,   x,    x,    x,    x,   x,  x ];
   [ 1,   1,   0,   0,   0,   0,   0,  0,  0, 0, 1, 1, 1, 1, 1, 1, 0, 1]->[ x,  x,  x,  x,  x,  x,  x, x,   x,    x,    x,    x,   x,  x ];

END

⌨️ 快捷键说明

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