4 Altera Corporation
Preliminary
Accelerating Nios II Networking Applications
■ MicroC/OS-II Thread Priority—Make sure that your application
task has the right MicroC/OS-II priority level assigned to it. In
general, the higher the priority of the application, the faster it runs to
completion. The application's priority levels should be balanced
against the priority levels assigned to the NicheStack's core tasks
discussed in “Structure of the NicheStack Networking Stack” on
page 8.
1 This suggestion assumes that your application is using
Altera’s recommended method for operating the
NicheStack Networking Stack, which requires using the
MicroC/OS-II operating system.
Hardware Optimizations
■ Processor Performance—The performance of the Nios II processor
can be increased in several ways:
● Computational Efficiency—Selecting the most
computationally efficient Nios II processor core is the quickest
way to improve overall application performance. The available
Nios II processor cores, in order of performance, are the
Nios II/f core (fastest), the Nios II/s core (standard), and the
Nios II/e core (slowest).
● Memory Bandwidth—Using low-latency, high speed memory
decreases the amount of time required by the processor to fetch
instructions and move data. Additionally, increasing the
processor's arbitration “share” of the memory via SOPC Builder
increases the processor's performance by allowing the Nios II
processor to perform more transactions to the memory before
another Avalon master can assume control of the memory.
● Instruction/ Data Caches—Adding an instruction and data
cache is an effective way to decrease the amount of time the
Nios II processor spends performing operations, especially in
systems that have slow memories (DDR SDRAM, SDRAM, and
so forth). In general, the larger the cache size selected for the
Nios II processor, the greater the performance improvement.
● Clock Frequency—Increasing the speed of the processor's clock
results in more instructions being executed per unit of time. To
gain the best performance possible, you should ensure that the
processor's execution memory is on the same clock domain as
the processor, to avoid the use of clock-crossing FIFOs.
One of the easiest ways to increase the operational clock
frequency of the processor and memory peripherals is to use an
SOPC Builder FIFO bridge peripheral to isolate the slower
peripherals of the system. With this peripheral, the processor,
memory, and Ethernet device are connected on one side of the
评论0