Identifying the pipeline stages

I am interested in synthesizing each pipeline stage individually. From the modules in sparc.v it is not clear how these are spread across the 6 stages. Except for some that are obvious like sparc_exu, most of them are not self-explanatory.

Is there anywhere some documentation on this mapping? If not, is there any way to identify the inter-stages registers?

Any help or advice is welcomed. Thanks.

[418 byte] By [BogdanR] at [2007-11-26 8:02:12]
# 1

The SPARC core pipeline diagram is in Slide 7 of the following

presentation at Multi-core conference.

http://opensparc.info/cgi-bin/goto.php?w=http://opensparc.sunsource.net/conf/mu lticore/06/Niagara_Microarchitecture_ooox-Poonacha.pdf

The individual pipeline stages may be combined in to one hierarchical

block and hence will not be synthesizable separately. Here is high

level description of blocks and pipeline stages, most of the pipeline

stage logic is the 3 blocks :

1. IFU (Instruction Fetch Unit) includes following pipeline stages -

Fetch, Thread Selection and Decode.

It also includes Instruction Cache complex.

2. EXU (Execution Unit) includes the Execute stage of the pipeline.

3. LSU (Load/Store Unit) includes Memory and Writeback stages

and Data Cache complex.

In addition, TLU (Trap Logic Unit) has Traps and PC logic, SPU has Crypto

features. FFU is Floating point Front end unit. MMU has memory management

unit.

OpenSparc at 2007-7-6 20:34:36 > top of Java-index,Open Source Technologies,OpenSPARC...