nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 16:47



Reply to topic  [ 6 posts ] 
PLD в Proteus 
Author Message
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
0iStalker wrote:
Не нашёл способов симулировать Verilog в Proteus'е, ...

А я, кстати, нашел! Но никак руки не доходят это попробовать... :-?
Только, подозреваю я, что и CPLD вряд ли ускорит проекты до реального времени...

_________________
iLavr


29 Nov 2018 09:40
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
0iStalker wrote:
Не нашёл способов симулировать Verilog в Proteus'е, ...

А я, кстати, нашел! Но никак руки не доходят это попробовать... :-?

Так чисто, если кому вдруг интересно - здесь проекты CPLD.
Я где-то читал статью, что результат проекта Verilog просто загружают как *.hex в ПЗУ.
Quote:
Proteus and PLD simulation
https://www.edaboard.com/showthread.php?30296-Proteus-and-PLD-simulation

- How can I simulate PLD from Cypress with Proteus?
- Create file.jed with PLD compiler and load to PLD model
like you do for CPU (file.hex)

CPLD в проектах, кстати, маленькие. Но надо воскурить Help по Proteus.
Вроде там было сказано, что при необходимости можно засимулировать CPLD любого размера.
Attachment:
cpld.gif
cpld.gif [ 18.14 KiB | Viewed 11963 times ]

Attachment:
_CPLD.zip [33.45 KiB]
Downloaded 502 times

_________________
iLavr


17 Apr 2019 11:16
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
... если кому вдруг интересно - здесь проекты CPLD в Proteus.
...
CPLD в проектах, кстати, маленькие. Но надо воскурить Help по Proteus.
Вроде там было сказано, что при необходимости можно засимулировать CPLD любого размера.

В общем, в Proteus CPLD делают из специального примитива - МАТРИЦА 16х64.
Ниже - на основе этой матрицы выполнена PLD PAL16L8.
Attachment:
М16Х64.PNG
М16Х64.PNG [ 11.54 KiB | Viewed 4736 times ]

Собственно, матрица эта представляет собой вот такую часть ПЛМ - матрицу "И".
Attachment:
Logic_Array_ANDgif.gif
Logic_Array_ANDgif.gif [ 29.85 KiB | Viewed 4736 times ]

Но в Proteus не всё так просто, как на картинке, у этого примитива МАТРИЦЫ есть ряд настроек,
которые позволяют ей удачно вписываться в основу многих моделей ПЛИС.

Вот по поводу этих настроек и имеет смысл воскурить Help по Proteus, что я сейчас и делаю...
Если кто-либо жаждет воскурить Help по PLD в Proteus сам, раздел называется: The Matrix Model - MATRIX_#1_#2

Ну а что касается файлов JEDEC, которые многих здесь пугали и пугают, то в случае PLD в Proteus
эти файлы просто минимально достаточны. Вот рабочий пример:

 SCRIPT PAL_JEDEC_FILE
Code:
*SCRIPT PAL_JEDEC_FILE COUNT8
{
L0044 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
L0088 1111 0111 1111 1111 1111 1111 1111 1111 1111 1111 1101 *
L0132 1101 1111 1111 1111 1111 1111 1111 1111 1111 1111 1110 *
L0440 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
L0484 1111 1111 0111 1111 1111 1111 1111 1111 1111 1111 1101 *
L0528 1110 1101 1111 1111 1111 1111 1111 1111 1111 1111 1110 *
L0572 1101 1110 1111 1111 1111 1111 1111 1111 1111 1111 1110 *
L0924 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
L0968 1111 1111 1111 0111 1111 1111 1111 1111 1111 1111 1101 *
L1012 1110 1110 1101 1111 1111 1111 1111 1111 1111 1111 1110 *
L1056 1111 1101 1110 1111 1111 1111 1111 1111 1111 1111 1110 *
L1100 1101 1111 1110 1111 1111 1111 1111 1111 1111 1111 1110 *
L1496 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
L1540 1111 1111 1111 1111 0111 1111 1111 1111 1111 1111 1101 *
L1584 1110 1110 1110 1101 1111 1111 1111 1111 1111 1111 1110 *
L1628 1111 1111 1101 1110 1111 1111 1111 1111 1111 1111 1110 *
L1672 1111 1101 1111 1110 1111 1111 1111 1111 1111 1111 1110 *
L1716 1101 1111 1111 1110 1111 1111 1111 1111 1111 1111 1110 *
L2156 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
L2200 1111 1111 1111 1111 1111 0111 1111 1111 1111 1111 1101 *
L2244 1110 1110 1110 1110 1101 1111 1111 1111 1111 1111 1110 *
L2288 1111 1111 1111 1101 1110 1111 1111 1111 1111 1111 1110 *
L2332 1111 1111 1101 1111 1110 1111 1111 1111 1111 1111 1110 *
L2376 1111 1101 1111 1111 1110 1111 1111 1111 1111 1111 1110 *
L2420 1101 1111 1111 1111 1110 1111 1111 1111 1111 1111 1110 *
L2904 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
L2948 1111 1111 1111 1111 1111 1111 0111 1111 1111 1111 1101 *
L2992 1110 1110 1110 1110 1110 1101 1111 1111 1111 1111 1110 *
L3036 1111 1111 1111 1111 1101 1110 1111 1111 1111 1111 1110 *
L3080 1111 1111 1111 1101 1111 1110 1111 1111 1111 1111 1110 *
L3124 1111 1111 1101 1111 1111 1110 1111 1111 1111 1111 1110 *
L3168 1111 1101 1111 1111 1111 1110 1111 1111 1111 1111 1110 *
L3212 1101 1111 1111 1111 1111 1110 1111 1111 1111 1111 1110 *
L3652 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
L3696 1111 1111 1111 1111 1111 1111 1111 0111 1111 1111 1101 *
L3740 1110 1110 1110 1110 1110 1110 1101 1111 1111 1111 1110 *
L3784 1111 1111 1111 1111 1111 1101 1110 1111 1111 1111 1110 *
L3828 1111 1111 1111 1111 1101 1111 1110 1111 1111 1111 1110 *
L3872 1111 1111 1111 1101 1111 1111 1110 1111 1111 1111 1110 *
L3916 1111 1111 1101 1111 1111 1111 1110 1111 1111 1111 1110 *
L3960 1111 1101 1111 1111 1111 1111 1110 1111 1111 1111 1110 *
L4004 1101 1111 1111 1111 1111 1111 1110 1111 1111 1111 1110 *
L4312 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
L4356 1111 1111 1111 1111 1111 1111 1111 1111 0111 1111 1101 *
L4400 1110 1110 1110 1110 1110 1110 1110 1101 1111 1111 1110 *
L4444 1111 1111 1111 1111 1111 1111 1101 1110 1111 1111 1110 *
L4488 1111 1111 1111 1111 1111 1101 1111 1110 1111 1111 1110 *
L4532 1111 1111 1111 1111 1101 1111 1111 1110 1111 1111 1110 *
L4576 1111 1111 1111 1101 1111 1111 1111 1110 1111 1111 1110 *
L4620 1111 1111 1101 1111 1111 1111 1111 1110 1111 1111 1110 *
L4664 1111 1101 1111 1111 1111 1111 1111 1110 1111 1111 1110 *
L4708 1101 1111 1111 1111 1111 1111 1111 1110 1111 1111 1110 *
L5808 1010 1010 1010 1010 *
}
*ENDSCRIPT

И больше ничего из стандарта JEDEC просто не надо... Нет, стандартный JEDEC-файл поддерживается!
Просто всё остальное, кроме таблицы фьюзов, Proteus игнорирует... :wink:

_________________
iLavr


15 May 2022 15:32
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
В общем, в Proteus CPLD делают из специального примитива - МАТРИЦА 16х64.

Ниже - пример, как работать с этой матрицей.
Attachment:
MATRIX.PNG
MATRIX.PNG [ 21.29 KiB | Viewed 4683 times ]

Файл JEDEC я написал руками в текстовом редакторе с помощь copy-paste, по принципу, как Shaos вот тут
уже весьма давно предлагал: Создание прошивки для GAL22V10 вручную...

Пример в проекте весьма характерный, чтобы было понятно, как это работает.
У матрицы 8 независимых групп по 8 линий выходов (64), я написал код прошивки только для первых
четырёх групп выходов. Дальше - по аналогии.

Здесь - проект Proteus:
Attachment:
M_Test.zip [26.61 KiB]
Downloaded 189 times

А здесь - переведённый на русский хелп Proteus по работе с этой матрицей.
Attachment:
PLD_Proteus.zip [78.36 KiB]
Downloaded 186 times

В переводе есть один сомнительный момент в терминологии - о нём я ниже напишу.

_________________
iLavr


17 May 2022 16:28
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
В общем-то в файле хелп по матрицам от Proteus никаких особых откровений нет для тех, кто с ПЛМ работал
или хотя бы читал об их устройстве. Важным там являются всякие свойства матрицы в терминах Proteus.

Но один момент там несколько неудобен был для перевода. Есть в хелп такой рисунок:
Attachment:
терм-0.png
терм-0.png [ 8.6 KiB | Viewed 4682 times ]

На нем обозначен термин: Product Lines. В любом переводчике это звучит весьма глупо... :-?

Но для тех, кто с ПЛМ работал, очевидно, что это линии матрицы, на которых накапливается логическое
произведение сигналов входов и их инверсий (Product - умножать).

На мой взгляд, этому термину - Product Lines - соответствует понятие "терм" в отечественной литературе:
Attachment:
терм-1.png
терм-1.png [ 7.13 KiB | Viewed 4682 times ]

Поэтому термин Product Lines я переводил как "линии термов", "терм", "термы".
Если есть иные мнения - готов выслушать...

Кто не понял, где там накапливаются логические произведения, ниже - весьма доходчивая иллюстрация:
Attachment:
image406.png
image406.png [ 88.47 KiB | Viewed 4682 times ]

P1 ... P5 - это и есть здесь термы, как мне представляется - соответствуют Product Lines.

_________________
iLavr


17 May 2022 16:51
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
... термин: Product Lines. В любом переводчике это звучит весьма глупо... :-?
На мой взгляд, этому термину - Product Lines - соответствует понятие "терм" в отечественной литературе...

Я в общем-то сомневался вот по какой причине: ну не помню я слова "терм" из соответствующих курсов ВУЗа... :(
Но хорошо помню такие термины как "минтерм" и "макстерм" ! :wink:

Пока я переводил хелп, уточнять это было некогда, но сегодня решил я уточнить, не ввожу ли я всех в заблуждение... :roll:

Общий смысл понятия "терм" я читать никому не советую: в древнем Риме - это статуя на колонне-постаменте,
а в математике - читайте сами... 8)

Нам ближе вот такое, более конкретное его толкование:
Attachment:
Терм_img6.png
Терм_img6.png [ 119.74 KiB | Viewed 4646 times ]

Выходит, что "терм" - это обобщающее название для частных его случаев "минтерма" и "макстерма":
Attachment:
минтерм-1.png
минтерм-1.png [ 152.82 KiB | Viewed 4646 times ]

Значит "терм", упоминаемый в хелпе по матрицам - это "минтерм". :kruto:
Attachment:
Терм_img5.png
Терм_img5.png [ 219.71 KiB | Viewed 4646 times ]

Так что с термином "терм" я, похоже что не ошибся, и в заблуждение всех не ввожу... :wink:

_________________
iLavr


18 May 2022 06:55
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 6 posts ] 

Who is online

Users browsing this forum: No registered users and 28 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.