Systemc.H

Páginas: 5 (1062 palabras) Publicado: 20 de octubre de 2012
UNIVERSIDAD DE LOS ANDES NÚCLEO UNIVERSITARIO “RAFAEL RANGEL” DEPARTAMENTO DE INGENIERIA ARQUITECTURA DEL COMPUTADOR

SystemC

Trujillo 24/09/12

SystemC
Es una poderosa herramienta de programación que nos permite describir o modelar sistemas a nivel de comportamiento.
Está pensado para hacer frente a Hardware y Software, permite modelar y/o simular grandes sistemas. SystemC no es unnuevo lenguaje de programación, es simplemente una biblioteca del lenguaje C++.

SystemC
Está compuesto por un conjunto de librerías y macros implementadas en C++ que hacen posible una simulación de procesos concurrentes con la sintaxis del lenguaje C++ ordinario.

Así los objetos descritos pueden comunicarse durante una simulación de tiempo real usando señales de cualquier tipo ofrecido porC++, además algunas otras ofrecidas por las librerías de SystemC y también otras definidas por el usuario.

System C
SystemC es frecuentemente descrito como un lenguaje de descripción de hardware como son VHDL y Verilog, pero es más adecuado describirlo como un lenguaje de descripción de sistemas, puesto que es realmente útil cuando se usa para modelar sistemas a nivel de comportamiento.SystemC es desarrollado y soportado por OSCI (Open SystemC Initiative), la cual es una organización sin fines de lucro, compuesta por una gran cantidad de compañías, universidades e individuos.

SystemC
SystemC agrega al lenguaje C++ las siguientes características:

• Noción de tiempo. • Concurrencia. • Tipos de datos especiales para modelado de Hardware.

• Jerarquía modular para manejar laestructura y
conectividad.

SystemC
Algunas de las ventajas que ofrece el uso de SystemC son:

• Abstracción: Ofrece varios niveles de abstracción para el modelado de sistemas. • Reutilización del diseño: Al igual que C++, el diseño puede ser reutilizado. • Permite especificar al mismo tiempo el software y el hardware de un sistema electrónico.

Niveles de abstracción manejados porSystemC respecto al de otros lenguajes.

SystemC
¿Qué tipos de datos podemos implementar?

• Todos los tipos de datos que nos ofrece C++.int, float, double, bool…
• Ademas de los nuevos tipos de datos que nos ofrece la biblioteca systemc.h.

SystemC
Algunos Tipos de Datos de systemc.h:
• Tipos Extendidos: sc_int entero con signo de 64 bits sc_uint entero sin signo de 64 bits sc_bigint enterocon signo de precisión arbitraria sc_biguint entero sin signo de precisión arbitraria • Tipos Logicos: sc_bit un bit con dos únicos valores posibles 2 sc_logic un bit en el que se pueden dar 4 valores sc_bv vector de sc_bit sc_lv vector de sc_logic

SystemC
Módulos (Modules)
Los módulos son la unidad básica de diseño en SystemC, y se caracterizan por lo siguiente: • Pueden representar unsistema, un bloque, un tablero, un chip y así sucesivamente. • Permiten dividir un sistema complejo en pequeños, manejables y reutilizables bloques. • Pueden contener puertos, canales, procesos, variables internas, métodos internos y otros módulos.

SystemC
Módulos (Modules)
Los módulos representan la unidad mas elemental del diseño con systemC, son en todo caso, contenedores de datos yprocesos. Para declararlos podemos usar algunas de estas formas: struct NombreDelModulo: publicsc_module{}; class NombreDelModulo: publicsc_module{}; SC_MODULE (NombreDelModulo);

SystemC
Puertos (Ports)
Se caracterizan por lo siguiente: • Son la comunicación entre los módulos y su entorno. • Transfieren la información necesarios para la ejecución de procesos. • Cada puerto solo puede transportar untipo de dato especifico y en una definida dirección (entrada , salida , entrada-salida). • Es posible conectar puertos de módulos “padre” a puertos de módulos “hijos”(de módulos a sub-módulos) directamente.

SystemC
Puertos (Ports)
Su declaración se realiza de la siguiente manera: sc_in NombreDelPuerto; sc_out NombreDelPuerto; sc_inout NombreDelPuerto; Puerto de Entrada Puerto de Salida...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS