You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
"Emit a standalone @ctrl_pkt_overlay device (and tag source devices) for the load-pdi-to-ctrl-pkt reconfigure flow. When false, the pass applies the overlay in place only (legacy behavior).">,
let summary = "Expand load_pdi operations to explicit configuration sequences";
399
399
let description = [{
400
-
This pass transforms `load_pdi { device_ref = @device }` operations as follows:
401
-
1. Create an empty device `@empty_N`.
402
-
2. Replace the load_pdi with `load_pdi { device_ref = @empty_N }` -- this causes a device reset.
403
-
3. Configure the device for the selected design by inserting write32s and blockwrites.
404
-
405
-
The configuration operations are generated by converting the referenced device's configuration to a transaction binary and then disassembling it into MLIR operations.
400
+
This pass transforms `load_pdi { device_ref = @device }` operations.
401
+
402
+
By default (`ctrl-pkt = false`), each op is replaced with:
403
+
1. A `load_pdi { device_ref = @empty_N }` op (loading an empty device,
404
+
which causes a device reset).
405
+
2. A sequence of `aiex.npu.write32`/`aiex.npu.blockwrite` ops that
406
+
configure the device.
407
+
408
+
With `ctrl-pkt = true`, each op is replaced with:
409
+
1. A `load_pdi { device_ref = @ctrl_pkt_overlay }` op, which loads the
410
+
column control packet overlay needed to stream further configuration
411
+
as control packets.
412
+
2. A sequence of `aiex.npu.control_packet` ops that configure the device.
413
+
414
+
The configuration operations are generated by converting the referenced
415
+
device's configuration to a transaction binary and then disassembling it
416
+
into MLIR operations.
417
+
418
+
This pass is intended to run after runtime sequence materialization
419
+
(i.e., after `aiex.configure` ops have been turned into
420
+
`aiex.npu.load_pdi`).
406
421
}];
407
422
408
423
let constructor = "xilinx::AIEX::createAIEExpandLoadPdiPass()";
0 commit comments