@@ -12,37 +12,8 @@ import "susan_thin";
import "edge_draw";
import "os";

/*
behavior Susan(i_uchar7220r_receiver in_image, i_uchar7220s_sender out_image)
{
OS rtos;
c_int7220sr_queue r(1ul);
c_uchar7220sr_queue mid(1ul);
c_uchar7220sr_queue mid_edge_draw(1ul);
c_uchar7220sr_queue image_edge_draw(1ul);
Edges edges(in_image, r, mid, image_edge_draw, rtos);
Thin thin(r, mid, mid_edge_draw, rtos);
Draw draw(image_edge_draw, mid_edge_draw, out_image, rtos);
void main(void)
{
par {
edges;
thin;
draw;
}
}
};
*/
behavior TASK_PE1(i_uchar7220r_receiver in_image, i_uchar7220s_sender out_image, OSAPI rtos){

// struct Task sedge;
// struct Task sthin;
// struct Task sdraw;

c_int7220sr_queue r(1ul, rtos);
c_uchar7220sr_queue mid(1ul, rtos);
@@ -55,8 +26,18 @@ behavior TASK_PE1(i_uchar7220r_receiver in_image, i_uchar7220s_sender out_image,

struct Task my_t;

struct Task e;
struct Task t;
struct Task d;


void main(void){

//e = rtos.task_create("edges");
//t = rtos.task_create("thin");
//d = rtos.task_create("draw"):

//rtos.init(e);
edges.init();
thin.init();
draw.init();
@@ -1,5 +1,5 @@
# 1 "susan.sc"
# 1 "/home/ecelrc/students/mli2/EE382N/LAB1/EMBEDDED_SYSTEM_DESIGN/lab2/a/a_meng/3//"
# 1 "/home/ecelrc/students/ssong/labs/lab2/a/a_meng/3//"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "susan.sc"
@@ -2745,11 +2745,8 @@ import "detect_edges";
import "susan_thin";
import "edge_draw";
import "os";
# 41 "susan.sc"
behavior TASK_PE1(i_uchar7220r_receiver in_image, i_uchar7220s_sender out_image, OSAPI rtos){



behavior TASK_PE1(i_uchar7220r_receiver in_image, i_uchar7220s_sender out_image, OSAPI rtos){


c_int7220sr_queue r(1ul, rtos);
@@ -2763,8 +2760,18 @@ behavior TASK_PE1(i_uchar7220r_receiver in_image, i_uchar7220s_sender out_image,

struct Task my_t;

struct Task e;
struct Task t;
struct Task d;


void main(void){






edges.init();
thin.init();
draw.init();
BIN +5.29 KB (100%) lab2/a/a_meng/3/susan.sir
Binary file not shown.
Binary file not shown.

Large diffs are not rendered by default.

@@ -2,7 +2,7 @@
// C++ header file generated by SpecC V2.2.1
// Design: susan_edge_detector
// File: susan_edge_detector.h
// Time: Tue Oct 20 16:43:04 2015
// Time: Tue Oct 20 17:24:51 2015
//////////////////////////////////////////////////////////////////////

// Note: User-defined include files are inlined in this file.
@@ -1557,7 +1557,7 @@ class OS : public _specc::channel, public OSAPI
unsigned int head;

#line 35 "./os.sc"
struct Task rdyq[3];
struct Task rdyq[20];

#line 44 "./os.sc"
unsigned int start;
@@ -1568,7 +1568,7 @@ class OS : public _specc::channel, public OSAPI
unsigned int task_pool;

#line 37 "./os.sc"
c_handshake e0; c_handshake e1; c_handshake e2;
c_handshake e0; c_handshake e1; c_handshake e10; c_handshake e11; c_handshake e12; c_handshake e13; c_handshake e14; c_handshake e15; c_handshake e16; c_handshake e17; c_handshake e18; c_handshake e19; c_handshake e2; c_handshake e3; c_handshake e4; c_handshake e5; c_handshake e6; c_handshake e7; c_handshake e8; c_handshake e9;
};

#line 70 "c_double_handshake.sc"
@@ -2383,12 +2383,12 @@ class Thin : public _specc::behavior, public ST
SusanThin_WriteOutput susan_thin_write_output;
};

#line 41 "susan.sc"
#line 15 "susan.sc"
class TASK_PE1 : public _specc::behavior
{
private:

#line 41 "susan.sc"
#line 15 "susan.sc"
i_uchar7220r_receiver (&in_image); i_uchar7220s_sender (&out_image); OSAPI (&rtos);
public:

@@ -2398,49 +2398,58 @@ class TASK_PE1 : public _specc::behavior
void main(void);
private:

#line 56 "susan.sc"
#line 31 "susan.sc"
struct Task d;

#line 29 "susan.sc"
struct Task e;

#line 27 "susan.sc"
struct Task my_t;


struct Task t;
unsigned long int _scc_const_port_0;
unsigned long int _scc_const_port_1;
unsigned long int _scc_const_port_2;
unsigned long int _scc_const_port_3;

#line 54 "susan.sc"
#line 25 "susan.sc"
Draw draw;

#line 52 "susan.sc"
#line 23 "susan.sc"
Edges edges;

#line 50 "susan.sc"
#line 21 "susan.sc"
c_uchar7220sr_queue image_edge_draw;

#line 48 "susan.sc"
#line 19 "susan.sc"
c_uchar7220sr_queue mid;
c_uchar7220sr_queue mid_edge_draw;

#line 47 "susan.sc"
#line 18 "susan.sc"
c_int7220sr_queue r;

#line 53 "susan.sc"
#line 24 "susan.sc"
Thin thin;
};

#line 78 "susan.sc"
#line 59 "susan.sc"
class PE1 : public _specc::behavior
{
private:

#line 78 "susan.sc"
#line 59 "susan.sc"
i_uchar7220r_receiver (&in_image); i_uchar7220s_sender (&out_image); OSAPI (&rtos);
public:

#line 2438 "susan_edge_detector.h"
#line 2447 "susan_edge_detector.h"
PE1(unsigned int _idcnt, i_uchar7220r_receiver (&in_image), i_uchar7220s_sender (&out_image), OSAPI (&rtos));
virtual ~PE1(void);
void main(void);
private:

#line 79 "susan.sc"
#line 60 "susan.sc"
TASK_PE1 task_pe1;
};

@@ -2453,7 +2462,7 @@ class Design : public _specc::behavior
i_receive (&start); unsigned char (&image_buffer)[7220]; i_sender (&out_image_susan);
public:

#line 2457 "susan_edge_detector.h"
#line 2466 "susan_edge_detector.h"
Design(unsigned int _idcnt, i_receive (&start), unsigned char (&image_buffer)[7220], i_sender (&out_image_susan));
virtual ~Design(void);
void main(void);
@@ -2475,7 +2484,7 @@ class Design : public _specc::behavior
#line 35 "design.sc"
OS rtos;

#line 46 "design.sc"
#line 44 "design.sc"
WriteImage_wp write_image;
};

@@ -2488,7 +2497,7 @@ class Monitor : public _specc::behavior
i_receiver (&img); i_receiver (&start_time_channel);
public:

#line 2492 "susan_edge_detector.h"
#line 2501 "susan_edge_detector.h"
Monitor(unsigned int _idcnt, i_receiver (&img), i_receiver (&start_time_channel));
virtual ~Monitor(void);
void main(void);
@@ -2504,7 +2513,7 @@ class Stimulus : public _specc::behavior
i_send (&start); unsigned char (&image_buffer)[7220]; i_sender (&start_time_channel);
public:

#line 2508 "susan_edge_detector.h"
#line 2517 "susan_edge_detector.h"
Stimulus(unsigned int _idcnt, i_send (&start), unsigned char (&image_buffer)[7220], i_sender (&start_time_channel));
virtual ~Stimulus(void);
void get_image(char [200], unsigned char *);
@@ -2519,7 +2528,7 @@ class Main : public _specc::class_type
private:
public:

#line 2523 "susan_edge_detector.h"
#line 2532 "susan_edge_detector.h"
Main(unsigned int _idcnt);
virtual ~Main(void);
int main(void);
@@ -3445,7 +3454,7 @@ extern "C" const char *time2str(char [21], unsigned long long int);

extern "C" unsigned long long int str2time(const char *);

#line 3449 "susan_edge_detector.h"
#line 3458 "susan_edge_detector.h"
void _scc_bit4_err_handle(const _bit4&);

//////////////////////////////////////////////////////////////////////
Binary file not shown.
@@ -1,5 +1,5 @@
# 1 "susan_edge_detector.sc"
# 1 "/home/ecelrc/students/mli2/EE382N/LAB1/EMBEDDED_SYSTEM_DESIGN/lab2/a/a_meng/3//"
# 1 "/home/ecelrc/students/ssong/labs/lab2/a/a_meng/3//"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "susan_edge_detector.sc"
Binary file not shown.
@@ -1,5 +1,5 @@
# 1 "susan_edges.sc"
# 1 "/home/ecelrc/students/mli2/EE382N/LAB1/EMBEDDED_SYSTEM_DESIGN/lab2/a/a_meng/3//"
# 1 "/home/ecelrc/students/ssong/labs/lab2/a/a_meng/3//"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "susan_edges.sc"
BIN +5.62 KB (110%) lab2/a/a_meng/3/susan_edges.sir
Binary file not shown.
@@ -1,5 +1,5 @@
# 1 "susan_thin.sc"
# 1 "/home/ecelrc/students/mli2/EE382N/LAB1/EMBEDDED_SYSTEM_DESIGN/lab2/a/a_meng/3//"
# 1 "/home/ecelrc/students/ssong/labs/lab2/a/a_meng/3//"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "susan_thin.sc"
BIN +5.52 KB (110%) lab2/a/a_meng/3/susan_thin.sir
Binary file not shown.
@@ -1,5 +1,5 @@
# 1 "write_image.sc"
# 1 "/home/ecelrc/students/mli2/EE382N/LAB1/EMBEDDED_SYSTEM_DESIGN/lab2/a/a_meng/3//"
# 1 "/home/ecelrc/students/ssong/labs/lab2/a/a_meng/3//"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "write_image.sc"
BIN +5.26 KB (110%) lab2/a/a_meng/3/write_image.sir
Binary file not shown.