Добрый день. Пытаюсь в WinCupl вставить такой макрос:
$macro arit Y,D,F ;
IF {Y/D<Y} OUT F=1;
IF {Y/D=Y} OUT F=0;
$mend
arit (Y,D,F);
Макрос вообще-то не нужен, нужно выполнить деление и неравенство.
Эти операции работают под только под $macro и $repeat. Может кто подскажет.
В программировании разбираюсь слабо (
Тоже вопрос по WinCUPL.
Как в нем реализовать работу с триггерами в GAL?
var.d, var.ck и прочие упоминания вызывают ошибки.
Что показательно, в сети нет ни одного примера для галок.
ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
Если ты про ATF16V8, то у них clk глобальный и как правило не пишется. Он всегда подключается к входу CLK
Погляди на моем сайте страничку по ZXM-777, там есть сорцы галок - http://micklab.ru/My%20Computer/ZXM777.htm
Спасибо, Медведь!
Я сделал вывод из твоих сорцов, что:
1. Первый вывод даже описывать не нуно, он всегда тактирует входы С триггеров.
2. Мы можем подавать фиксируемый сигнал на входы D триггеров. После клока они пропишутся в триггерах и будут доступны на выходах.
3. Использование синхронных S и R надо проверять самому. OE должно работать и без проверки.
ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
Только, если ты объявил хотя бы один триггер, иначе он обычный вход.
А так вроде в WinCupl есть (должна быть) вроде справка. Я когда сочинял свои поделия пользовался ей.
Или есть отдельный мануал - www.atmel.com/Images/doc0737.pdf
Ну и не забывай, что есть PLDшки с более широком функционалом, а есть что попроще типа 16V8
Последний раз редактировалось Mick; 03.12.2017 в 22:28.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Так понимаю, Вы делаете аналог 7474 (ТМ2). Поделитесь результатом?
https://rutracker.org/forum/viewtopic.php?t=2746130
Здесь книга, где на примере GAL16V8 рассмотрены ПЛУ и частично программирование (на русском!)
Напомню про свой пост тут: http://zx-pk.com/forum/viewtopic.php...it=abel#p68702
В свое время копал информацию по поводу софта для разработки под разные PLD и вот:
Есть еще всякие pld от signetics типа рт21\22 они мощьные, и по идее сейчас даже менее востребованы чем gal16v8, так что высока вероятность что если кто-то нарвется на "залижи" их в каком нибудь магазине то цена на них будет ниже плинтуса... К тому же для них нужны дорогие и старые программаторы (~$300...1000), что в принципе заносит их в разряд "редкости". Можно применить в качестве "защиты" от копирования например в картридже с новой игрой для kickstarter-a. Signetics выпускал и другой софт (AMAZE 1) для создания прошивок под свои микрухи по таблицам аналогичным той что можно видеть в софте для СТЕРХ-а.Хочу сказать про РТ1/2 изза которых данный программатор (тут речь про СТЕРХ) имеет смысл брать. Стандартом файлов для прошивок был JED, чтобы сделать такой файл используйте старый софт под DOS (это palasm, abel я их позаливал на vetusware). Потом правда стандартный софт СТЕРХ-а их просто так не загрузит но можно скопировать содержимое файла (fuses) из созданного Вами в пустую болванку созданную софтом СТЕРХ-а и подшаманить CRC в конце. Сам редактор JED-ов для 82S100 в софте СТЕРХ-а глючит, так что перед прошивкой советую загружать JED с диска а не пытаться шить то что отредактированно.
Ищите софт через google на сайте vetusware запросом типа: PLD site:vetusware.com
Кроме того, в принципе все эти самые PLD представляют собой cхему из 3-х частей - AND часть, OR часть, FLIPFLOP часть... Т.е. не стоит забывать что можно все это заменить на копеечный PROM типа РЕ3,РТ4,РТ5 и т.д. + триггер типа ТМ2 на выходе.
Последний раз редактировалось bigral; 12.12.2017 в 04:32.
Не, я хотел добавить к кое-какому устройству на галке тактируемую защелку на выход.
И хоть оно не нужно оказалось, знать на будущее как работать с флип-флопами в галке - нужно. Еще сто раз пригодится. Я галки активно использую.
- - - Добавлено - - -
Перезаписываемые РТ и РЕ где можно купить?
А кроме шуток - на Али галки стоят вполне вменяемые деньги, чтобы их тратить наподобие семечек.
- - - Добавлено - - -
Разобрался.
Если мы пишем код для работы галки в регистровом режиме, с использованием триггеров, то пин 1 всегда будет тактовым входом CLK, пин 11 всегда будет входом разрешения вывода данных OE.
Указывать их не обязательно, но желательно. Например, для симулятора они понадобились указанными.
Вход триггера - .D
Выход с триггера наружу - через .OE.
Разумеется, перед триггером может быть комбинаторная логика.
Всё, что упоминается в этом посте - применительно к WinCUPL.
Код:Device g16v8 ; /* INPUT PINS */ PIN 1 = clk; PIN 2 = in1; PIN 3 = in2; PIN 11 = oe1; /* OUTPUT PINS */ PIN 13 = out1; out1.d = in1 # in2;
ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
Разобрался.
Если мы пишем код для работы галки в регистровом режиме, с использованием триггеров, то пин 1 всегда будет тактовым входом CLK, пин 11 всегда будет входом разрешения вывода данных OE.
Указывать их не обязательно, но желательно. Например, для симулятора они понадобились указанными.
Вход триггера - .D
Выход с триггера наружу - через .OE.
Разумеется, перед триггером может быть комбинаторная логика.
Всё, что упоминается в этом посте - применительно к WinCUPL.
[/QUOTE]Код:Device g16v8 ; /* INPUT PINS */ PIN 1 = clk; PIN 2 = in1; PIN 3 = in2; PIN 11 = oe1; /* OUTPUT PINS */ PIN 13 = out1; out1.d = in1 # in2;
А как результат out.d вернуть в программу для дальнейшего использования?
- - - Добавлено - - -
Последний раз редактировалось ВиД; 16.12.2017 в 09:06.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)