A memory controller converts controller output signals output from a
controller into memory input signals according to the operation
specifications of memory chips to operate, and outputs the resultant to
the memory chips through a common bus. The memory controller also
receives memory output signals output from the memory chips through the
common bus, and converts the received signals into controller input
signals receivable to the controller. This allows the single memory
controller to access the plurality of types of memory chips. As a result,
the memory controller can be reduced in chip size, lowering the cost of
the memory system.