Intel PXA250 and PXA210 Chipper User Manual


 
PXA250 and PXA210 Applications Processors Design Guide A-7
SA-1110/Applications Processor Migration
You must choose memory clocks, LCD clock rates, audio clocks and interfaces, which GPIOs are
actually connected to hardware, and many more. There are no easy solutions here, the device
space of the PXA250 applications processor is very diverse and a number of selections must be
made in software to select your particular hardware functionality.
All software that controls registers will need to be updated. If a switch is connected to a GPIO, then
the software that reads the switch register will differ between the PXA250 applications processor
and SA-1110. This applies to software that controls Configuration registers in Coprocessor space
and also to a number of the memory-mapped registers. Many functions such as memory timing
configuration are done through these registers. For example the registers to access USB have a
different name, address and function. Any code that directly accesses the USB hardware registers
will need to be rewritten.
A.2.5 DMA
The SA-1110 contains a 6-channel DMA controller that pipes data between the serial channels and
memory. The PXA250 applications processor provides a far more substantial 16-channel chained
DMA controller that can be configured to do much more than the SA-1110, including memory-to-
memory block moves.
Clearly there are changes in software required to take advantage of this new asset. However this
also implies changes necessary to maintain similar functionality to the SA-1110. To configure a
DMA channel you no longer set it to a specific serial port, instead you map it to the specific source
or destination address of the serial port FIFO. You must configure other parameters for address
incrementing and memory width that differ between the PXA250 applications processor and SA-
1110.
Any device driver using the SA-1110 DMA controller, or application that takes direct advantage of
DMA, will need to be modified. The impact of this varies as some Operating Systems and many
device drivers have ignored the SA-1110 DMA in favor of programmed I/O.
Some have argued to remove the required interrupt management code as they only move small
blocks. Operating systems have excluded DMA to guarantee they can manage the real-time
behavior of different threads. Other software providers saw the serial ports as so slow that DMA
performance was unnecessarily complex.
The performance benefit of the PXA250 DMA controller is one of the most significant
improvements over the SA-1110, particularly in the area of memory-to-memory moves. Changing
code on the PXA250 applications processor to utilize the new DMA functionality will significantly
enhance applications.
A.3 Using New PXA250 Features
This appendix doesn’t attempt to discuss all the differences between the PXA250 applications
processor and the SA-1110 or it would become quite substantial. There are numerous significant
advantages that the PXA250 applications processor has to offer, all of which potentially require
changes in hardware, firmware or software development tools. This section lists just a few of the
chief additional benefits of the PXA250 applications processor. However, refer to the product
specifications for further details. This list is not comprehensive.