Наглядно сказано. Но у SV ширится применяемость.
Наглядно сказано. Но у SV ширится применяемость.
- - - Добавлено - - -Код:entity KL11 is port ( busClock : in std_logic ; FromBus : in typeFromBus ; ToBus : out typeToBus ; UartClock : in std_logic ; RXin : in std_logic ; TXout : out std_logic ); end KL11; ..... Chasis0: ChasisM port map ( FromPDP11ToSlot => PDP11_20_IOPBus.FromBus , FromSlotToPDP11 => PDP11_20_IOPBus.ToBus , FromBusToSlot(0) => SysRegs0.FromBus , FromSlotToBus(0) => SysRegs0.ToBus , FromBusToSlot(1) => Rom0.FromBus , FromSlotToBus(1) => Rom0.ToBus , FromBusToSlot(2) => Rom1.FromBus , FromSlotToBus(2) => Rom1.ToBus , FromBusToSlot(3) => Uart0.FromBus , FromSlotToBus(3) => Uart0.ToBus , FromBusToSlot(4) => KW11L0.FromBus , FromSlotToBus(4) => KW11L0.ToBus , FromBusToSlot(5) => RK0.FromBus , FromSlotToBus(5) => RK0.ToBus , FromBusToSlot(6) => RL0.FromBus , FromSlotToBus(6) => RL0.ToBus , FromBusToSlot(7) => SwitchesDisplay0.FromBus , FromSlotToBus(7) => SwitchesDisplay0.ToBus , FromSlotToMemory => Memory0.ToMemory , FromMemoryToSlot => Memory0.FromMemory , FromBusMasterToSlot(0) => PDP11_20_MemoryBus.FromBusMaster , FromSlotToBusMaster(0) => PDP11_20_MemoryBus.ToBusMaster , FromBusMasterToSlot(1) => RK0BusMaster22.FromBusMaster , FromSlotToBusMaster(1) => RK0BusMaster22.ToBusMaster , FromBusMasterToSlot(2) => RL0BusMaster.FromBusMaster , FromSlotToBusMaster(2) => RL0BusMaster.ToBusMaster );
А, да, описание ChasisM
Код:type arrtypeFromBus is array (natural range <>) of typeFromBus; entity ChasisM is port ( FromPDP11ToSlot : in typeFromBus ; FromSlotToPDP11 : out typeToBus ; FromBusToSlot : out arrtypeFromBus ; FromSlotToBus : in arrtypeToBus ; FromSlotToMemory : out typeFromBusMaster ; FromMemoryToSlot : in typeToBusMaster ; FromBusMasterToSlot : in arrtypeFromBusMaster := zeroFromBusMaster ; FromSlotToBusMaster : out arrtypeToBusMaster ); end ChasisM;
просто вопрос: почему символ ";" физически расположен в начале строки, а не в конце ???
В таком варианте несколько более удобно добавлять строки (особенно в конец) и комментировать - ибо после последней строчки ; не ставится
Ну и в какой то степени - дело привычки (от программирования)
- - - Добавлено - - -
Как и запятая
Ну и плюс некоторая подсказка - данная строка - всё ещё продолжение чего-то более крупного (описания интерфейса, привязки сигналов в входу-выходу модуля...)
ну не знаю... "такие фломастеры мне не нравятся". Вырви глаз - ассоциируется с символом начала комментариев. В одном asm ; было началом комментария...
пс: посему если б я взялся за ваши исходники - то перематерился бы капитально, плюнул, и больше не заглядывал. Я такой практики оформления знаков разделения и терминирования ни разу не наблюдал за последние 20 лет (на сколь позволяет склероз).
;-)
Последний раз редактировалось AlexG; 03.03.2021 в 20:12.
были бы исходники, это самый главный вопрос; и второе, компилируются ли они... к остальному можно адаптироваться за час и не вообще париться. а если часть перетаскивается в свой проект, то можно стиль и подправить.
если в "эту" сторону - то да, отредактировал и ок. А если опенсоурсе, как нынче "модно" ? я б не смог бы физиологически так оформлять добровольно.
Холивар VHDL vs Verilog вечный, и далеко не на одном форуме. Я участвовать не буду - меня вычеркивайте
Просто оставлю это здесь - мировые тенденции от Mentor-a:
Ну вот посвежее картинка:
Ммм, я даже не знал что VHDL потихоньку закатывается.
Последний раз редактировалось Vslav; 03.03.2021 в 22:18.
Много написал в ответ, а потом всё стёр.
- - - Добавлено - - -
Мне без разницы - есть они или нет. Нет - напишу сам. Есть - посмотрю, чему из них можно научиться.
Хотя нет. Разница есть - когда только начинаешь с чем то знакомиться. Да, тогда проект PDP2011 сильно помог.
Но сейчас в нём много чего переделано.
А оставшееся - как отправная точка. И тоже будет переделано.
Так ABEL жив? (Ну, полужив, ибо не в моде.) Блин, это же первый язык HDL, который я, более-менее, освоил. Прощивки для Галок в кондукторе AZ написаны именно на нем. И, когда я позже изучал Верилог, меня неприятно удивили, например, шаманские пляски с бубном - по другому не назовешь - вокруг того же асинхронного сброса регистра. То ли дело а ABEL-е. Регистр (или отдельный триггер) - это, если смотреть по СИ-шному - структура. Если R1 - это регистр, то R1.C - это его клок, R1.D - вход данных, R1.OE - разрешение выхода, R1.FB - выход регистра в логическую матрицу (обратная связь) и т.д. И никаких вопросов. Соединяй нужные входы и выходы триггера с тем, чем надо, и вперед. Все прозрачно и однозначно, никаких гаданий, почему первым в if-е нужно разобраться с асинхронным RESET'ом, а остальное делать потом...
Понятно, что мэйнстрим сейчас - Verilog и новое следует сочинять именно на нем, а, все равно, жаль, что ABEL или его новейшая реинкарнация - AHDL - не прижился...
Кто мешает тебе выдумать порох непромокаемый? (К.Прутков, мысль № 133)
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)