First of all, the number of referencing of a variable described in a
behavior level circuit is calculated. Next, a bit width of the variable
is extracted, and a plurality of memories capable of data transferring of
the extracted bit width are selected. Next, a sum of a frequency of
memory access for each of the selected plurality of memories when the
variable is allocated thereto is calculated based on the number of
referencing and the bit width of the variable. After that, as a target
for allocating the variable, a memory that minimizes the calculated sum
of the frequency of the memory access is selected.