architecture: version: 0.3 subtree: - name: system attributes: technology: 55nm latency: 5ns local: - name: DRAM class: DRAM attributes: type: LPDDR4 width: 256 subtree: - name: chip attributes: technology: 55nm latency: 5ns local: - name: ifmap_spad[0..15] class: regfile attributes: width: 256 depth: 4096 # n_banks: 32 block-size: 32 datawidth: 8 read_bandwidth: 32 write_bandwidth: 32 n_ports: 2 # cluster_size: 2 meshX: 16 - name: weight_spad[0..15] class: regfile attributes: width: 32 depth: 4096 # n_banks: 16 block-size: 4 datawidth: 8 read_bandwidth: 4 write_bandwidth: 4 n_ports: 2 meshX: 16 - name: psum_spad[0..15] class: regfile attributes: width: 512 depth: 256 # n_banks: 16 block-size: 64 datawidth: 8 read_bandwidth: 64 write_bandwidth: 64 n_ports: 2 meshX: 16 subtree: - name: PEarray[0..255] local: - name: dummy_spad class: regfile attributes: width: 16 depth: 0 meshX: 16 meshY: 16 subtree: - name: PE[0..15] local: - name: macc class: intmac attributes: datawidth: 16 meshX: 256 mapspace: targets: - name: DRAM constraints: - type: temporal attributes: factors: permutation: NCMSRQP - name: ifmap_spad constraints: - type: bypass attributes: keep: [ Inputs ] bypass: [ Outputs, Weights ] - type: temporal attributes: factors: N=1 C=1 M=1 S=1 R=1 Q=1 P=1 permutation: NCMSRQP # - type: spatial # attributes: # factors: C=16 N=1 M=1 S=1 R=1 Q=1 P=1 # permutation: C NMSRQP # split: 1 - name: weight_spad constraints: - type: bypass attributes: keep: [ Weights ] bypass: [ Inputs,Outputs ] - type: temporal attributes: factors: N=1 Q=1 P=1 permutation: NQP CMSR # - type: spatial # attributes: # factors: S=1 R=1 Q=1 P=1 N=1 # permutation: C NSRQP M # split: 1 - name: psum_spad constraints: - type: bypass attributes: keep: [ Outputs ] bypass: [ Inputs, Weights ] - type: temporal attributes: factors: C=1 S=1 R=1 permutation: CSR NMQP - type: spatial attributes: factors: M=16 N=1 C=1 S=1 R=1 Q=1 P=1 permutation: M NCSRQP split: 1 - name: dummy_spad constraints: - type: bypass attributes: keep: [ ] bypass: [ Inputs, Weights, Outputs ] - type: temporal attributes: factors: N=1 C=1 M=1 S=1 R=1 Q=1 P=1 permutation: NCMSRQP mapper: live-status : True diagnostics : True problem: instance: C: 32 Hdilation: 1 Hstride: 1 M: 32 N: 1 P: 128 Q: 128 R: 3 S: 3 Wdilation: 1 Wstride: 1 shape: coefficients: - default: 1 name: Wstride - default: 1 name: Hstride - default: 1 name: Wdilation - default: 1 name: Hdilation data-spaces: - name: Weights projection: - - - C - - - M - - - R - - - S - name: Inputs projection: - - - N - - - C - - - R - Wdilation - - P - Wstride - - - S - Hdilation - - Q - Hstride - name: Outputs projection: - - - N - - - M - - - Q - - - P read-write: true dimensions: - C - M - R - S - N - P - Q name: CNN-Layer