@@ -1259,85 +1259,6 @@ This will produce the following YAML representation:
12591259 instances : []
12601260` ` `
12611261
1262- ### Data Taps
1263-
1264- Grand Central Taps are a tool for representing cross module references. They
1265- enable users to "tap" into signal anywhere in the module hierarchy and treat
1266- them as local, read-only signals.
1267-
1268- ` DataTaps` annotations are used to fill in the body of a FIRRTL external module
1269- with cross-module references to other modules. Each `DataTapKey` corresponds
1270- to one output port on the `DataTapsAnnotation` external module.
1271-
1272- # ### ReferenceDataTapKey
1273-
1274- | Property | Type | Description |
1275- | ----------- | -------- | ------------------ |
1276- | class | string | `sifive.enterprise.grandcentral.ReferenceDataTapKey` |
1277- | source | string | Reference target of the source signal. |
1278- | portName | string | Reference target of the data tap black box port |
1279-
1280- This key allows tapping a target in FIRRTL.
1281-
1282- # ### DataTapModuleSignalKey
1283-
1284- | Property | Type | Description |
1285- | ----------- | -------- | ------------------ |
1286- | class | string | sifive.enterprise.grandcentral.DataTapModuleSignalKey |
1287- | module | string | ExtModule name of the target black box |
1288- | internalPath | string | The path within the module |
1289- | portName | string | Reference target of the data tap black box port |
1290-
1291- This key allows tapping a point by name in a blackbox.
1292-
1293- # ### LiteralDataTapKey
1294-
1295- | Property | Type | Description |
1296- | ----------- | -------- | ------------------ |
1297- | class | string | sifive.enterprise.grandcentral.LiteralDataTapKey |
1298- | literal | string | FIRRTL constant literal |
1299- | portName | string | Reference target of the data tap black box port |
1300-
1301- This key allows the creation of a FIRRTL literal.
1302-
1303- # ### DataTapsAnnotation
1304-
1305- | Property | Type | Description |
1306- | ----------- | -------- | ------------------ |
1307- | class | string | sifive.enterprise.grandcentral.DataTapsAnnotation |
1308- | blackbox | string | ExtModule name of the black box with ports referenced by the keys |
1309- | keys | array | List of DataTapKeys |
1310-
1311- The `DataTapsAnnotation` is a collection of all the data taps in a circuit.
1312- This will cause a data tap module to be emitted. The `DataTapsAnnotation`
1313- implies `DontTouchAnnotation` on any `ReferenceDataTapKey.source` target.
1314-
1315- Example :
1316-
1317- ` ` ` json
1318- {
1319- "class": "sifive.enterprise.grandcentral.DataTapsAnnotation",
1320- "blackBox": "~GCTDataTap|DataTap",
1321- "keys": [
1322- {
1323- "class": "sifive.enterprise.grandcentral.ReferenceDataTapKey",
1324- "source": "~GCTDataTap|GCTDataTap>r",
1325- "portName": "~GCTDataTap|DataTap>_0"
1326- },
1327- {
1328- "class":"sifive.enterprise.grandcentral.DataTapModuleSignalKey",
1329- "module":"~GCTDataTap|BlackBox",
1330- "internalPath":"baz.qux",
1331- "portName":"~GCTDataTap|DataTap>_1"
1332- },
1333- {
1334- "class":"sifive.enterprise.grandcentral.LiteralDataTapKey",
1335- "literal":"UInt<16>(\" h2a\" )",
1336- "portName":"~GCTDataTap|DataTap>_3"
1337- }
1338- ]
1339- }
1340- ` ` `
13411262
13421263### Memory Taps
13431264
0 commit comments