OpenCores
URL https://opencores.org/ocsvn/theia_gpu/theia_gpu/trunk

Subversion Repositories theia_gpu

[/] [theia_gpu/] [branches/] [gpu_8_cores/] [rtl/] [Collaterals/] [aDefinitions.v] - Diff between revs 118 and 119

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 118 Rev 119
Line 72... Line 72...
//You can play around with the size of instuctions, but keep
//You can play around with the size of instuctions, but keep
//in mind that Bits 3 and 4 of the Operand have a special meaning
//in mind that Bits 3 and 4 of the Operand have a special meaning
//that is used for the jump familiy of instructions (see Documentation).
//that is used for the jump familiy of instructions (see Documentation).
//Also the MSB of Operand is used by the decoder to distinguish 
//Also the MSB of Operand is used by the decoder to distinguish 
//between Type I and Type II instructions.
//between Type I and Type II instructions.
`define INSTRUCTION_WIDTH               64//55
`define INSTRUCTION_WIDTH       64
`define INSTRUCTION_OP_LENGTH 16//7
`define INSTRUCTION_OP_LENGTH   16
`define INSTRUCTION_IMM_BITPOS 54
`define INSTRUCTION_IMM_BITPOS 54
`define INSTRUCTION_IMM_BIT     6               //don't change this!
`define INSTRUCTION_IMM_BIT     6               //don't change this!
 
 
//Defines the Lenght of Memory blocks
//Defines the Lenght of Memory blocks
`define DATA_ROW_WIDTH  96
`define DATA_ROW_WIDTH  96
Line 167... Line 167...
//need to be in that specific order for the triangle fetcher to work 
//need to be in that specific order for the triangle fetcher to work 
//correctly!
//correctly!
 
 
`define CREG_AABBMIN                                                    `DATA_ADDRESS_WIDTH'd42
`define CREG_AABBMIN                                                    `DATA_ADDRESS_WIDTH'd42
`define CREG_AABBMAX                                                    `DATA_ADDRESS_WIDTH'd43
`define CREG_AABBMAX                                                    `DATA_ADDRESS_WIDTH'd43
`define CREG_V0                                                         `DATA_ADDRESS_WIDTH'd44 //002a
`define CREG_V0                        `DATA_ADDRESS_WIDTH'd44
`define CREG_UV0                                                                `DATA_ADDRESS_WIDTH'd45 //002b  
`define CREG_UV0                       `DATA_ADDRESS_WIDTH'd45
`define CREG_V1                                                         `DATA_ADDRESS_WIDTH'd46 //002c
`define CREG_V1                        `DATA_ADDRESS_WIDTH'd46
`define CREG_UV1                                                                `DATA_ADDRESS_WIDTH'd47 //002d
`define CREG_UV1                       `DATA_ADDRESS_WIDTH'd47
`define CREG_V2                                                         `DATA_ADDRESS_WIDTH'd48 //002e
`define CREG_V2                        `DATA_ADDRESS_WIDTH'd48
`define CREG_UV2                                                                `DATA_ADDRESS_WIDTH'd49 //002f
`define CREG_UV2                       `DATA_ADDRESS_WIDTH'd49
`define CREG_TRI_DIFFUSE                                        `DATA_ADDRESS_WIDTH'd50 //0030
`define CREG_TRI_DIFFUSE               `DATA_ADDRESS_WIDTH'd50
`define CREG_TEX_COLOR1                                         `DATA_ADDRESS_WIDTH'd53
`define CREG_TEX_COLOR1                                         `DATA_ADDRESS_WIDTH'd53
`define CREG_TEX_COLOR2                                         `DATA_ADDRESS_WIDTH'd54
`define CREG_TEX_COLOR2                                         `DATA_ADDRESS_WIDTH'd54
`define CREG_TEX_COLOR3                                         `DATA_ADDRESS_WIDTH'd55
`define CREG_TEX_COLOR3                                         `DATA_ADDRESS_WIDTH'd55
`define CREG_TEX_COLOR4                                         `DATA_ADDRESS_WIDTH'd56
`define CREG_TEX_COLOR4                                         `DATA_ADDRESS_WIDTH'd56
`define CREG_TEX_COLOR5                                         `DATA_ADDRESS_WIDTH'd57
`define CREG_TEX_COLOR5                                         `DATA_ADDRESS_WIDTH'd57
Line 194... Line 194...
`define C3     `DATA_ADDRESS_WIDTH'd66
`define C3     `DATA_ADDRESS_WIDTH'd66
`define C4     `DATA_ADDRESS_WIDTH'd67
`define C4     `DATA_ADDRESS_WIDTH'd67
`define C5     `DATA_ADDRESS_WIDTH'd68
`define C5     `DATA_ADDRESS_WIDTH'd68
`define C6     `DATA_ADDRESS_WIDTH'd69
`define C6     `DATA_ADDRESS_WIDTH'd69
`define C7     `DATA_ADDRESS_WIDTH'd70
`define C7     `DATA_ADDRESS_WIDTH'd70
`define R1              `DATA_ADDRESS_WIDTH'd71 //0x47
`define R1              `DATA_ADDRESS_WIDTH'd71
`define R2              `DATA_ADDRESS_WIDTH'd72 //0x48
`define R2              `DATA_ADDRESS_WIDTH'd72
`define R3              `DATA_ADDRESS_WIDTH'd73 //0x49
`define R3              `DATA_ADDRESS_WIDTH'd73
`define R4              `DATA_ADDRESS_WIDTH'd74
`define R4              `DATA_ADDRESS_WIDTH'd74
`define R5              `DATA_ADDRESS_WIDTH'd75
`define R5              `DATA_ADDRESS_WIDTH'd75
`define R6              `DATA_ADDRESS_WIDTH'd76
`define R6              `DATA_ADDRESS_WIDTH'd76
`define R7              `DATA_ADDRESS_WIDTH'd77
`define R7              `DATA_ADDRESS_WIDTH'd77
`define R8              `DATA_ADDRESS_WIDTH'd78
`define R8              `DATA_ADDRESS_WIDTH'd78
Line 276... Line 276...
`define ADD     `INSTRUCTION_OP_LENGTH'b0_000001        //1
`define ADD     `INSTRUCTION_OP_LENGTH'b0_000001        //1
`define SUB             `INSTRUCTION_OP_LENGTH'b0_000010        //2
`define SUB             `INSTRUCTION_OP_LENGTH'b0_000010        //2
`define DIV             `INSTRUCTION_OP_LENGTH'b0_000011        //3
`define DIV             `INSTRUCTION_OP_LENGTH'b0_000011        //3
`define MUL     `INSTRUCTION_OP_LENGTH'b0_000100        //4
`define MUL     `INSTRUCTION_OP_LENGTH'b0_000100        //4
`define MAG             `INSTRUCTION_OP_LENGTH'b0_000101        //5
`define MAG             `INSTRUCTION_OP_LENGTH'b0_000101        //5
//`define NOP           `INSTRUCTION_OP_LENGTH'b0_000110        //6
 
`define COPY    `INSTRUCTION_OP_LENGTH'b0_000111        //7
`define COPY    `INSTRUCTION_OP_LENGTH'b0_000111        //7
`define JGX             `INSTRUCTION_OP_LENGTH'b0_001_000       //8
`define JGX             `INSTRUCTION_OP_LENGTH'b0_001_000       //8
`define JLX             `INSTRUCTION_OP_LENGTH'b0_001_001       //9
`define JLX             `INSTRUCTION_OP_LENGTH'b0_001_001       //9
`define JEQX    `INSTRUCTION_OP_LENGTH'b0_001_010       //10 - A
`define JEQX    `INSTRUCTION_OP_LENGTH'b0_001_010       //10 - A
`define JNEX    `INSTRUCTION_OP_LENGTH'b0_001_011       //11 - B
`define JNEX    `INSTRUCTION_OP_LENGTH'b0_001_011       //11 - B

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.