A memory controller which can perform a series of data write operation to
a flash memory device fast is disclosed. The memory controller according
to an embodiment of the present invention is the memory controller for
accessing a memory having a plurality of physical blocks based on a host
address provided from a host computer. The memory controller has means
for dividing the physical blocks into a plurality of groups, means for
forming a plurality of virtual blocks by virtually combining a plurality
of physical blocks each of which belongs to different groups, the virtual
blocks can be divided into at least a first class and a second class, and
means for assigning adjacent host addresses into different physical
blocks belonging to the same virtual block of the first class and
assigning adjacent host addresses into the same physical blocks belonging
to the same virtual block of the second class.