Описание корзины и описание одного из входных набора сигналов. Остальные принципиально не отличаются.
Код:
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;
type typeFromBus is record
Reset : boolean;
Addr : typePDP11Addr13;
Common : typeFromBusCommon;
Interrupt : typeFromBusInterrupt;
end record typeFromBus;
type typeFromBusCommon is record
isBusCycle : boolean;
isPutData : boolean;
isByteAccess : boolean;
Data : typePDP11Word;
end record typeFromBusCommon;
type typeFromBusInterrupt is record
isInterrupt4Acknowledged : boolean;
isInterrupt5Acknowledged : boolean;
isInterrupt6Acknowledged : boolean;
isInterrupt7Acknowledged : boolean;
end record typeFromBusInterrupt;
type arrtypeFromBus is array (natural range <>) of typeFromBus;
- - - Добавлено - - -
Описание последовательного порта
Код:
entity KL11 is
generic
(
UartClockFrequency : integer := 24000000 -- set system clock frequency in Hz
; UartBaudRate : integer := 115200 -- baud rate value
; UartParityBit : string := "none" -- legal values: "none", "even", "odd", "mark", "space"
; BaseAddr : typePDP11Addr13
; BaseVec : typePDP11Vec
);
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;
- - - Добавлено - - -
Собранная корзина
Код:
XUChasis0: ChasisM
port map
(
FromPDP11ToSlot => xuPDP11_20_IOPBus.FromBus
, FromSlotToPDP11 => xuPDP11_20_IOPBus.ToBus
, FromBusToSlot(0) => xuSysRegs0.FromBus
, FromSlotToBus(0) => xuSysRegs0.ToBus
, FromBusToSlot(1) => xuRom0.FromBus
, FromSlotToBus(1) => xuRom0.ToBus
, FromBusToSlot(2) => xuRom1.FromBus
, FromSlotToBus(2) => xuRom1.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) => SwitchesDisplay0.FromBus
, FromSlotToBus(6) => SwitchesDisplay0.ToBus
, FromSlotToMemory => xuMemory0.ToMemory
, FromMemoryToSlot => xuMemory0.FromMemory
, FromBusMasterToSlot(0) => xuPDP11_20_MemoryBus.FromBusMaster
, FromSlotToBusMaster(0) => xuPDP11_20_MemoryBus.ToBusMaster
, FromBusMasterToSlot(1) => RK0BusMaster22.FromBusMaster
, FromSlotToBusMaster(1) => RK0BusMaster22.ToBusMaster
);
- - - Добавлено - - -

Сообщение от
Vslav
синхронные шины никому не нужны
Ещё раз. У нас разные понятия синхронной шины, как выяснилось.