A peripheral interface unit for interfacing a core processor having register space to at least one peripheral unit wherein the core processor utilizes a bus architecture having first and second source buses for writing data generated by the least one peripheral unit to the core and one destination bus for reading data from the core to be transferred to the at least one peripheral unit, said first and second source buses having corresponding first and second source address buses and said destination bus having a corresponding destination address bus, and the at least one peripheral unit utilizes a bus architecture having a single peripheral bus for reading data from and writing data to the peripheral unit and a corresponding peripheral address bus, said peripheral interface unit comprising:
- sequencing control logic means coupled between the core processor and the peripheral bus for arbitrating accesses to and from the two source buses and the destination bus;
- said sequencing control logic means comprising:
- 1) destination logic means coupled to said destination bus for determining the presence of a valid address into the core register space existing on the destination address bus and generating a signal D1VAL indicating that the destination logic means is being accessed;
- 2) first source logic means coupled to said first source bus for determining the presence of a valid address into the core register space existing on the first source address bus and the absence of a pending core write by the destination logic means and generating a signal S1VAL indicating that the first source logic means is being accessed;
- 3) second source logic means coupled to said second source bus for determining the presence of a valid address into the core register space existing on the second source address bus, and the absence of a pending core write by the destination logic means and the absence of a pending core read by the first source logic means and generating a signal S2VAL indicating that the second source logic means is being accessed;
- 4) prioritization and control signal logic means for determining the availability of the peripheral bus by checking a PRDY signal generated by said at least one peripheral unit and generating a set of signals indicating the presence and absence of a read operation on said first source bus, a read operation on said second source bus, and a write operation on said destination bus;
- 5) pipe hold control logic means for generating a core stall signal during each of:
- i. a read operation on said first source bus;
- ii. a read operation on said second source bus;
- iii. a read operation on one of said first source bus and said second source bus when is the peripheral bus is not ready;
- iv. a write operation followed by a read operation on one of said first source bus and said second source bus during the same bus cycle;
- and
- v. a write operation when the peripheral bus is not ready;
- said peripheral interface unit further comprising:
- b) data path logic means coupled to the sequencing control logic means for coupling the first and second source buses and the destination bus to the peripheral bus.