Reference Manual

Flex CPU Piggyback Board Hardware Reference
Operation of the Flex CPU 7
OPERATION OF THE FLEX CPU
Operation as Non-Turbo CPU
When used as a non-Turbo CPU, the Flex CPU board operates in a manner that is fundamentally
compatible with older CPU designs. However, there are a few issues to note:
The Flex CPU requires the use of V1.17 or newer firmware. There are few differences between the
previous V1.16H firmware and the V1.17 firmware other than the addition of internal support for the
Flex CPU design.
Due to more advanced processor logic and the internal integration of all memory, the Flex CPU will
operate significantly faster than older non-Turbo CPU designs, even for equivalent CPU frequencies.
The Flex CPU in a non-Turbo configuration will generally operate more than twice as fast as older
non-Turbo CPUs running at the same frequency.
This will result in significantly faster cycle times for background tasks such as PLC programs (the
frequency of interrupt-driven foreground tasks is not affected, although the increased computational
speeds permit higher frequencies for these tasks). Generally, this will not be a problem, but if
existing programs controlled timing by computational delay (e.g. number of loops waiting),
operational differences may occur.
The operational frequency of the CPU can now be set in software by new variable I46. If this
variable is set to 0, PMAC firmware looks at the jumpers (E48 on a PMAC(1), E2 and E4 on a
PMAC2) to set the operational frequency, retaining backward compatibility for 40, 60, and 80 MHz
operation.. If I46 is set to a value greater than 0, the operational frequency is set to 10MHz * (I46 +
1), regardless of the jumper setting. If the desired operational frequency is higher than the maximum
rated frequency for that CPU, the operational frequency will be reduced to the rated maximum. It is
always possible to operate the Flex CPU board at a frequency below its rated maximum.
On a Flex CPU board configured for Option 5AF with 40 MHz maximum frequency, I46 should be
set to 3 to operate the CPU at its maximum rated frequency.
On a Flex CPU board configured for Option 5CF with 80 MHz maximum frequency, I46 should be
set to 7 to operate the CPU at its maximum rated frequency.
On a Flex CPU board configured for Option 5EF with 160 MHz maximum frequency, I46 should be
set to 15 to operate the CPU at its maximum rated frequency.
I46 is only used at power-up/reset, so to change the operational frequency, set a new value of I46,
issue a SAVE command to store this value in non-volatile flash memory, then issue a $$$ command
to reset the controller.
To determine the frequency at which the CPU is actually operating, issue the TYPE command to the
PMAC. The PMAC will respond with five data items, the last of which is CLK Xn, where n is the
multiplication factor from the 20 MHz crystal frequency (not 10 MHz). n should be equivalent to
(I46+1)/2 if I46 is not requesting a frequency greater than the maximum rated for that CPU board. n
will be “2” for 40 MHz operation, 4 for 80 MHz operation, and 8 for 160 MHz operation.
If the CPU’s operational frequency has been determined by (a non-zero setting of) I46, the serial
communications baud rate is determined at power-up/reset by variable I54 alone according to the
following table: