Создание простого 2-битного асинхронного счетчика в WinCupl - PullRequest
0 голосов
/ 07 июня 2010
/* INPUT PINS */

PIN    1 =  clock; /* clock input*/ 

/**************** OUTPUT PINS *********************/

PIN    14 = Q1 ; /*output*/

PIN    15 = Q2 ; /*output*/

Q1.ck = clock;

Q1.d = !Q1;

Q2.d = !Q2;

Это мой код, и две строки под выходными контактами создают 1-битный счетчик пульсации, но я не уверен, как передать выход первого триггера в качестве тактового входа для второго триггера. Чип, который я пытаюсь запрограммировать, является чипом Atmel ATF750C.

Ответы [ 3 ]

1 голос
/ 06 ноября 2011

Устройство не поддерживает отдельные определения часов для отдельных триггеров.Вход часов на вывод 1 является общими часами для всех триггеров в устройстве.Вместо этого вы можете попробовать следующее:

Device = G16V8;

/* Inputs */

Pin 1 = CLK;  /* clock source */

Pin 11 = GND; /* ground this for registered operation */

/* Outputs */

Pin 12 = Q0;

Pin 13 = Q1;

Pin 14 = Q2;

Pin 15 = Q3;

/* Equations */

!Q0.d = !Q3;

Q0.oe = 'b'1; /* output enabled - also default */

!Q1.d = Q0;

Q1.oe = 'b'1; /* output enabled - also default */

!Q2.d = Q1;

Q2.oe = 'b'1; /* output enabled - also default */

!Q3.d = Q2;

Q3.oe = 'b'1; /* output enabled - also default */

Примечание. В приведенном выше примере представлен 4-разрядный двоичный счетчик / делитель.Например: вход тактовой частоты 8 МГц будет разделен на 8, что приведет к 4 сдвинутым выходам 1 МГц на каждом выводе Q.

0 голосов
/ 11 июня 2010

/ ******** ВЫХОДНЫЕ ПИНЫ ********** /

PIN 14 = Q1.d;

PIN 15 = Q2.d;

Q1.ck = часы;

! Q1.d = Q1;

Q2.ck =! Q1;

! Q2.d = Q2;

Это создает асинхронный счетчик пульсаций, который считает в двоичном виде с использованием триггеров D.

0 голосов
/ 07 июня 2010

Wincupl - это своего рода примитивный VHDL, но теперь я понял это. Мне просто нужно было добавить «.d» к моим выходным переменным, а затем подключить мои часы к выводу № 1 и заземлению № 11. И да, мне нужно было разобраться с документацией GAL16v8 и WinCUPL, чтобы все это понять.

...