[an error occurred while processing this directive]
Тут
(«Телесистемы»: Конференция «Программируемые логические схемы и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено ser_duk 01 июля 2004 г. 16:47
В ответ на: Буду очень благодарен. отправлено Amid 01 июля 2004 г. 13:29

SUBDESIGN a_cod
(
d[7..0] : INPUT;
q[12..0] : OUTPUT;
)
VARIABLE
c[2..0],s[3..0],cod[11..0] :node;
BEGIN
s[3..0]=(d3,!d2,d1,!d0);
c[2..0]=(!d6,d5,!d4);
cod[11..0]=0;
CASE c[] IS
WHEN 0 => cod[4..0]=(s[],1);
WHEN 1 => cod[5..0]=(1,s[],1);
WHEN 2 => cod[6..0]=(1,s[],1,0);
WHEN 3 => cod[7..0]=(1,s[],1,0,0);
WHEN 4 => cod[8..0]=(1,s[],1,0,0,0);
WHEN 5 => cod[9..0]=(1,s[],1,0,0,0,0);
WHEN 6 => cod[10..0]=(1,s[],1,0,0,0,0,0);
WHEN 7 => cod[11..0]=(1,s[],1,0,0,0,0,0,0);
END CASE;
IF d[7] THEN q[]=(0,cod[11..0]);
ELSE q[]=(1,(-cod[11..0]));
END IF;
END;
SUBDESIGN cod_a
(
d[12..0] :INPUT ;
q[7..0] :OUTPUT;
)
VARIABLE
c[2..0],s[3..0],cod[11..0] :node;
BEGIN
IF d[12] THEN cod[]=(-d[11..0]);q7=gnd;
ELSE cod[]=d[11..0];q7=vcc;
END IF;
TABLE
cod[]=>c[];
b"0000000XXXXX"=> h"0";
b"0000001XXXXX"=> h"1";
b"000001XXXXXX"=> h"2";
b"00001XXXXXXX"=> h"3";
b"0001XXXXXXXX"=> h"4";
b"001XXXXXXXXX"=> h"5";
b"01XXXXXXXXXX"=> h"6";
b"1XXXXXXXXXXX"=> h"7";
END TABLE;
CASE c[] IS
WHEN 0 => s[]=cod[4..1];
WHEN 1 => s[]=cod[4..1];
WHEN 2 => s[]=cod[5..2];
WHEN 3 => s[]=cod[6..3];
WHEN 4 => s[]=cod[7..4];
WHEN 5 => s[]=cod[8..5];
WHEN 6 => s[]=cod[9..6];
WHEN 7 => s[]=cod[10..7];
END CASE;
q[3..0]=(s3,!s2,s1,!s0);
q[6..4]=(!c2,c1,!c0);
END;

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru