Use of Multiple Bus Domain in IDesignSpec

Chip/Block residing in multiple bus domains.

While, registers for RTL can reside in single domain only.

Table of Content(avalon)
Table of Content
Index / Component / Default / Address / Page
1 / chip / 0x04000 - 0x07FFF
0x04000 - 0x040FF
1.1 / block_1 / 0x04100 - 0x044FF
1.1.4 / reg_avalon / 0x0 / 0x04100
0x04101 - 0x044FF
0x04500 - 0x07FFF
Table of Content(apb)
Table of Content
Index / Component / Default / Address / Page
1 / chip / 0x03000 - 0x06FFF
0x03000 - 0x030FF
1.1 / block_1 / 0x03100 - 0x034FF
1.1.3 / reg_apb / 0x0 / 0x03100
0x03101 - 0x034FF
1.2 / block_2 / 0x03500 - 0x038FF
1.2.3 / reg_32_apb / 0x0 / 0x03500
0x03501 - 0x038FF
1.3 / block_name / 0x03900 - 0x03CFF
1.3.1 / reg_31 / 0x0 / 0x03900
1.3.2 / reg_32 / 0x0 / 0x03901
0x03902 - 0x03CFF
0x03D00 - 0x06FFF
Table of Content(axi)
Table of Content
Index / Component / Default / Address / Page
1 / chip / 0x02000 - 0x11FFF
0x02000 - 0x020FF
1.1 / block_1 / 0x02100 - 0x030FF
1.1.2 / reg_axi / 0x0 / 0x02100
0x02104 - 0x030FF
1.2 / block_2 / 0x03100 - 0x040FF
1.2.1 / reg_21_axi / 0x0 / 0x03100
1.2.2 / reg_22_axi / 0x0 / 0x03104
0x03108 - 0x040FF
0x04100 - 0x11FFF
Table of Content(amba)
Table of Content
Index / Component / Default / Address / Page
1 / chip / 0x00800 - 0x087FF
0x00800 - 0x0087F
1.1 / block_1 / 0x00880 - 0x0107F
1.1.1 / reg_amba / 0x0 / 0x00880
0x00882 - 0x0107F
0x01080 - 0x087FF

1 chip

/ chip / / amba:0x00800
axi:0x02000
apb:0x03000
avalon:0x04000
offset / 0x1000 / external / size
oid=c5258ce4-9d3e-4458-b7ff-045d9b4c5775
{bus.domain=amba,axi,apb,avalon; offset.axi=0x2000; offset.apb=0x3000;
offset.avalon=0x4000}

In the bus domain template, the bus specified in the first rowis the default bus as selected in the “Configure->Settings”. The address unit for this bus should also match the address units in the “Configure->Settings”.

Bus Domain Name / Address Unit / Description / Bus
Busdomain
axi / 8 / This is AMBA-AHB bus domain / AMBA-AXI
amba / 16 / This is AMBA-AXI bus domain / AMBA-AHB
apb / 32 / This is AMBA-APB bus domain / AMBA-APB
avalon / 32 / This is AVALON bus domain / AVALON

1.1 block_1

/ block_1 / / amba:0x00880
axi:0x02100
apb:0x03100
avalon:0x04100
offset / 0x100 / external / size
oid=e3a156df-a834-4b53-bd9a-460dce6d1eec
{bus.domain=amba,axi,apb,avalon; offset.axi=0x100; offset.apb=0x100;
offset.avalon=0x100}

If parent exists on more than one bus domain then it is important to explicitly define a single bus domain for a register.

*** Register sharing on multiple domains is currently not supported.

1.1.1 reg_amba

/ reg_amba / / amba:0x00880
offset / external / size / 32 / default / 0x0
oid=d39bdaad-c0dc-4594-99b6-bd3e535af956
{bus.domain=amba}
bits / name / s/w / h/w / default / description
31:0 / Fld11 / Rw / Rw / 0x0

1.1.2 reg_axi

/ reg_axi / / axi:0x02100
offset / external / size / 32 / default / 0x0
oid=3d9b20d0-2c6a-4f8e-8030-79ef24090a1f
{bus.domain=axi}
bits / name / s/w / h/w / default / description
31:0 / Fld12 / Rw / Rw / 0x0

1.1.3 reg_apb

/ reg_apb / / apb:0x03100
offset / external / size / 32 / default / 0x0
oid=e4831f9d-0f1d-4913-8065-05cc37325b93
{bus.domain=apb}
bits / name / s/w / h/w / default / description
31:0 / Fld12 / Rw / Rw / 0x0

1.1.4 reg_avalon

/ reg_avalon / / avalon:0x04100
offset / external / size / 32 / default / 0x0
oid=69e276a4-21a4-4278-9761-917f700d98c5
{bus.domain=avalon}
bits / name / s/w / h/w / default / description
31:0 / Fld12 / Rw / Rw / 0x0

1.2 block_2

/ block_2 / / axi:0x03100
apb:0x03500
offset / external / size
oid=c8f20f68-1870-46cf-aca0-0a9b0285b0d1
{bus.domain=axi,apb; offset.apb=0x500}

1.2.1 reg_21_axi

/ reg_21_axi / / axi:0x03100
offset / external / size / 32 / default / 0x0
oid=3e654a3c-a9f0-4a45-ba97-d3eeec500fb9
{bus.domain=axi}
bits / name / s/w / h/w / default / description
31:0 / Fld21 / Rw / Rw / 0x0

1.2.2 reg_22_axi

/ reg_22_axi / / axi:0x03104
offset / external / size / 32 / default / 0x0
oid=8899becf-2d67-4988-927a-282caea31295
{bus.domain=axi}
bits / name / s/w / h/w / default / description
31:0 / Fld22 / Rw / Rw / 0x0

1.2.3 reg_32_apb

/ reg_32_apb / / apb:0x03500
offset / external / size / 32 / default / 0x0
oid=5f26f5a8-283d-44d1-8f70-efc286643ab5
{bus.domain=apb}
bits / name / s/w / h/w / default / description
31:0 / Fld12 / Rw / Rw / 0x0

1.3 block_name

/ block_name / / apb:0x03900
offset / external / size
oid=f7ec6d96-4e08-40ec-9844-4e4a3f0d52ed
{bus.domain=apb; offset.apb=0x900}

1.3.1 reg_31

/ reg_31 / / apb:0x03900
offset / external / size / 32 / default / 0x0
oid=1e6874fa-29d3-4bea-9a36-6dfd485d5c79
{bus.domain=apb}
bits / name / s/w / h/w / default / description
31:0 / Fld21 / Rw / Rw / 0x0

1.3.2 reg_32

/ reg_32 / / apb:0x03901
offset / external / size / 32 / default / 0x0
oid=599ac587-1d60-4831-96d3-2e6e459e9c5c
{bus.domain=apb}
bits / name / s/w / h/w / default / description
31:0 / Fld22 / Rw / Rw / 0x0

© 2015 Agnisys, Inc. ALL RIGHTS RESERVEDPage 1