a method of providing memory accesses for a multi - core processor includes reserving a group of pins of a multi - core processor to transmit either data or address information in communication with one or more memory chips , receiving memory access requests from the plurality of processor cores , determining granularity of the memory access requests by a memory controller , and dynamically adjusting the number of pins in the group of pins to be used to transmit address information based with the granularity of the memory access requests .