8000 GitHub - RW999creator/GPP-PIM
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

RW999creator/GPP-PIM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Generalized Ping-Pong Processing-In-Memory Architecture

Overview

GPP-PIM is a PIM architecture with weight update capabilities, supporting three modes: Generalized Ping-Pong, naive Ping-Pong, and in situ write/compute.

It possesses a set of customized instructions to facilitate the architecture in completing computational tasks.

Data such as execution time, macro utilization, off-chip bandwidth utilization, and on-chip memory usage will be monitored to test and compare the optimal parallel write/compute strategies.

GPP-PIM now supports comparisons in 12 different strategy usage environments.

Basic Parameters

Architecture

cores 16
number of macros in a core 16
array size 32*32B
rewrite speed 8B/cycle~1B/cycle

ISA

'Instruction.md' This document defines the ISA utilized by GPP-PIM.

Scenarios

Design Phase Optimization

off-chip bandwidth result memory usage by a macro
128 1*512B
128 2*512B
128 4*512B
128 8*512B
128 24*512B
128 56*512B

Runtime Phase Pipeline Adaption

off-chip bandwidth result memory usage by a macro
512 4*512B
256 4*512B
128 4*512B
64 4*512B
32 4*512B
16 4*512B
8 4*512B

Usage

You can utilize the provided instruction code to conduct execution strategy tests for various usage scenarios. For detailed information, please refer to the 'GPP-PIM_usage_guide.md'.

Preparation:

  1. Python 3 environment: Employed for running the assembler program.
  2. ModelSim software: Utilized for simulating our Verilog files.

Citation

You can cite GPP-PIM using our related paper as:

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0