09.09.2014 Views

13th International Conference on Membrane Computing - MTA Sztaki

13th International Conference on Membrane Computing - MTA Sztaki

13th International Conference on Membrane Computing - MTA Sztaki

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

S. Verlan, J. Quiros<br />

the present c<strong>on</strong>figurati<strong>on</strong>. In order to update it, each register add up its c<strong>on</strong>tent<br />

and values generated by previous core. Besides that, this core rises a c<strong>on</strong>trol<br />

signal when current c<strong>on</strong>figurati<strong>on</strong> is equal to previous <strong>on</strong>e, i.e., it indicates that<br />

system has reached a stop c<strong>on</strong>diti<strong>on</strong> to unit c<strong>on</strong>trol.<br />

Unit C<strong>on</strong>trol and Output Interface<br />

Besides previous cores, an additi<strong>on</strong>al block, called c<strong>on</strong>trolBlock, is required to<br />

provide communicati<strong>on</strong> and c<strong>on</strong>trol logic. C<strong>on</strong>trol is implemented using a finite<br />

state machine, which requires five states, and it generates all c<strong>on</strong>trol signals.<br />

Although input/output interface has not been developed yet, some debug cores<br />

are used to c<strong>on</strong>trol executi<strong>on</strong> and get results.<br />

In c<strong>on</strong>clusi<strong>on</strong>, the proposed hardware design requires <strong>on</strong>ly five clock cycles<br />

per iterati<strong>on</strong>, which is a good achievement, although the final speed depends <strong>on</strong><br />

the relati<strong>on</strong> cycles-frequency. Our design takes advantages of FPGA technology<br />

and the implementati<strong>on</strong> achieves a high degree of parallelism of objects in the<br />

initial stage, and of rules in the others. However, the key of system’s performance<br />

is the implementati<strong>on</strong> of the automat<strong>on</strong> in the assignment stage. All operati<strong>on</strong>s<br />

required to compute NBV ariants(Π, C, smax) and V ariant(n, Π, smax) are<br />

defined recursively and can be pipelined. In assignRule, each sub-block associated<br />

to n-th rule computes, asynchr<strong>on</strong>ously, the value of N (associated to its<br />

rule), basing <strong>on</strong> values obtained by previous block. This permits to execute all<br />

operati<strong>on</strong>s in <strong>on</strong>ly two cycles, <strong>on</strong>e for left propagati<strong>on</strong> and another for right<br />

propagati<strong>on</strong>, while a synchr<strong>on</strong>ous versi<strong>on</strong> requires, at least, n cycles.<br />

4.3 Experimental Results<br />

We tested the design <strong>on</strong> a series of c<strong>on</strong>crete examples. All of them c<strong>on</strong>sider rules<br />

whose dependency graph forms a chain, the difference being in the right-hand<br />

side. We c<strong>on</strong>sider four P systems with the alphabet O = {o 0 , . . . , o N }, N > 0<br />

and having following rules (we c<strong>on</strong>sider index operati<strong>on</strong>s modulo N + 1):<br />

– System 1 (circular)<br />

r i :<br />

– System 2 (2-circular)<br />

{<br />

o i−1 o i → o i o i+1 1 ≤ i < N − 1<br />

o N−1 o N → o 0 o 1 i = N<br />

r i : o i−1 o i → o i+1 o i+2 ,<br />

1 ≤ i ≤ N<br />

– System 3 (linear)<br />

r i :<br />

{<br />

o i−1 o i → o i o i+1 1 ≤ i < N − 1<br />

o N−1 o N → o N o N i = N<br />

446

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!