A data processing system having a central processing unit (CPU) with address generation circuitry for accessing a circular buffer region in a non-aligned manner is provided. The CPU has an instruction set architecture that is optimized for intensive numeric algorithm processing. The CPU has dual load/store units connected to dual memory ports of a memory controller. The CPU can execute two aligned data transfers each having a length of one byte, two bytes, four bytes, or eight bytes in parallel by executing two load/store instructions. The CPU can also execute a single non-aligned data transfer having a length of four bytes or eight bytes by executing a non-aligned load/store instruction that utilizes both memory ports. A data transfer address for each load/store instruction is formed by fetching the instruction (600), decoding the instruction (610) to determine instruction type, transfer data size, addressing mode and scaling selection. For a non-aligned instruction, after selectively scaling (620) an offset provided by the instruction and combining the selectively scaled offset with a base address value the resultant address is then augmented (640) by a line size associated with the instruction. For circular addressing mode, both the resultant address and the augmented address are bounded (650, 651) to stay within the circular buffer region and two aligned data items are accessed in parallel (652, 653) and a non-aligned data item is extracted (654) from the two aligned data items, such that the non-aligned data item wraps around the boundary of the circular buffer region.

Un sistema dell'elaborazione dei dati che ha un'unità centrale di elaboratore (CPU) con i circuiti della generazione di indirizzo per l'accesso a della regione circolare dell'amplificatore in un modo non-aligned è fornito. Il CPU ha un'architettura dell'insieme delle istruzioni che è ottimizzata per l'elaborazione numerica intensa di procedura. Il CPU ha unità doppie di load/store collegate agli orificii doppi di memoria di un regolatore di memoria. Il CPU può eseguire due trasferimenti di dati stati allineati ciascuno che ha una lunghezza di un byte, di due byte, di quattro byte, o di otto byte parallelamente eseguendo due istruzioni di load/store. Il CPU può anche eseguire un singolo trasferimento di dati non-aligned che ha una lunghezza di quattro byte o di otto byte eseguendo un'istruzione non-aligned di load/store che utilizza entrambi gli orificii di memoria. Un indirizzo di trasferimento di dati per ogni istruzione di load/store è costituito dal prendere l'istruzione (600), decodificante l'istruzione (610) per determinare il tipo di istruzione, il formato di dati di trasferimento, regolare e modo di richiamo la selezione. Per un'istruzione non-aligned, dopo che selettivamente regolare (620) un'immagine riportata abbia fornito l'istruzione ed unendo l'immagine riportata selettivamente regolata con un valore di indirizzo basso l'indirizzo risultante allora è aumentato (640) da una linea formato si è associato con l'istruzione. Per il modo di richiamo circolare, sia l'indirizzo risultante che l'indirizzo aumentato sono limitati (650, 651) per rimanere all'interno della regione circolare dell'amplificatore e due elementi dei dati stati allineati sono raggiunti parallelamente (652, 653) e un elemento dei dati non-aligned è estratto (654) dai due elementi dei dati stati allineati, tali che gli avvolg non-aligned dell'elemento dei dati intorno al contorno della regione circolare dell'amplificatore.

 
Web www.patentalert.com

< (none)

< Inbred corn line TDC1

> Method for cell modeling and timing verification of chip designs with voltage drop

> (none)

~ 00045