Graphics Processor

Customization GPU models for experimenting with different CUDA programming

Quick Explanation

  • Supports warps
  • Flexible number of cores
  • Math, Memory and Special Instructions
  • Parameterized support for all vendor GPU
  • Intergrated with processors, DMA and other peripherals
  • Supports multiple levels of memory

Protocol

  • Implemented graphics processors from AMD, Nvidia and Samsung

Graphics Processor Unit

VisualSim has created a GPU template that allows the user to try different configurations of threads, warps, shader cores, special instructions, memory access, caching and dispatcher.  The model is connected to the processor sub-system and also to interfaces for data input/output.  The model has four files that define the software behavior. These enable software, functions, memory accesses, special instructions, threads and masks.

The purpose of the GPU block is twofold:

  • Study new options for the GPU
  • Evaluate the performance of a target SoC in a ADAS, Artificial Intelligence, Machine Learning and media applications

A graphics processing unit (GPU) is a specialized CPU to rapidly manipulate and alter values in memory and accelerate the rendering of images for output to a display device. GPUs are used in autonomous driving, machine learning, embedded systems, mobile phones, personal computers, workstations, and game consoles. GPUs are very efficient at preparing images, threads and videos.  Their highly parallel structure makes them more efficient than general-purpose CPUs for neural and machine learning algorithms, where the processing of large blocks of data is done in parallel. In a personal computer, a GPU can be present on a video card, or it can be embedded on the motherboard or, in certain CPUs, on the CPU die.

GPUs were initially used to accelerate the memory-intensive work of texture mapping and rendering polygons.  Later, units were added to accelerate geometric calculations such as the rotation and translation of vertices into different coordinate systems.

Modern GPUs perform calculations related to 2D acceleration and 3D graphics. Older GPUs include basic and framebuffer capabilities (usually with a VGA compatibility mode), while newer cards like AMD/ATI HD5000-HD7000 emulate 2D in 3D hardware.

Recent developments in GPUs include support for programmable shaders which can manipulate vertices and textures, oversampling and interpolation techniques to reduce aliasing, and very high-precision color spaces. As most of these computations involve matrix and vector operations, they are especially suited to other embarrassingly parallel problems. With the emergence of deep learning, the importance of GPUs has increased.

GPU- implements a shader model