Preferencje help
Widoczny [Schowaj] Abstrakt
Liczba wyników

Znaleziono wyników: 23

Liczba wyników na stronie
first rewind previous Strona / 2 next fast forward last
Wyniki wyszukiwania
help Sortuj według:

help Ogranicz wyniki do:
first rewind previous Strona / 2 next fast forward last
EN
The paper presents an original idea of the selective control program execution that allows significant response time reduction. The exhaustive analysis of the PLC program performance is given. An analytic approach explains the idea of the selective control program evaluation and gives the requirements for its feasibility. There is presented a systematic and formal method of program analysis based on a data flow graph approach. The method generates acyclic graph from the control program that is subject of optimization, variable allocation and instruction generation. The graph approach allows determining variables dependencies and task partitioning required by selective program execution. The method utilize the hardware supported variable changes detection. It is transparent for system operation and enables evaluation of blocks that require update.
PL
Artykuł przedstawia opracowany całościowy proces syntezy wielokontekstrowego sprzętowego układu sterowania implementowanego w strukturach FPGA. Dedykowana struktura sprzętowa pozwala na zdecydowane zredukowanie czasu przetwarzania w porównaniu z rozwiązaniami programowymi. Program podlegający syntezie jest opisany językiem SFC zgodnie z normą IEC61131-3. W procesie syntezy wykorzystano oryginalną grafową metodę reprezentacji postaci pośredniej programu sterowania. Metoda konstruowania postaci pośredniej zachowuje własności przetwarzania, ujawniając zadania równoległe. Opracowano również metodę odwzorowania technologicznego dla tablicowych układów FPGA. W celu porównania przedstawiono rezultaty implementacji opracowanej metody oraz bezpośredniego odwzorowania postaci grafowej.
EN
The paper presents the synthesis and implementation algorithms of multiple context logic controller implemented in a FPGA. A massively parallel hardware execution of control algorithms is utilized that significantly reduces the throughput time. The input program is written in the SFC according to the IEC61131-3 standard. An originally developed intermediate representation based on data flow graph has been used for processing. The graph building algorithm maintains sequential dependencies and reveals parallel tasks in program. Developed method of scheduling and mapping is dedicated for LUT based FPGA devices. The paper is concluded with exemplary implementation comparison of greedy direct mapping and developed FPGA architecture optimized method.
PL
W artykule przedstawiono metody reprezentacji pośredniej programu sterowania opisanego językiem LD oraz SFC zgodnie z IEC61131-3, opracowane na potrzeby syntezy sprzętowej kładów sterowania PLC implementowanych w strukturach programowalnych FPGA. W opisie wykorzystano oryginalną implementację grafu skierowanego. Przedstawiono opracowane reguły odwzorowania, zapewniające zachowanie zależności sekwencyjnych przy jednoczesnym uzyskaniu maksymalnego zrównoleglenia działania. Przedstawiono również zarys metod syntezy na podstawie opracowanego odwzorowania pośredniego.
EN
The increased performance of a PLC can be achieved by direct implementation of a control program in an FPGA device [3, 6, 7, 8, 12, 13]. The paper presents a methodology of transforming a standard PLC program given by LD or SFC according to IEC61131-3 to the common intermediate form dedicated for logic synthesis. The intermediate form of the control program is represented by a data flow graph (DFG, Fig. 1). The set of nodes is carefully selected to minimize the number of different types of nodes while assuring implementation of PLC behavior. Attributed edges and multiple argument nodes are used to reduce size of DFG (Fig. 2). The developed method for creating a DAG maintains sequential dependencies between variables and revel operations parallelism. In PLC programs the variables pass values between operations and computation cycles. In order to maintain sequential dependencies, value assignment to a variable is observed. If the accessed variable has not been assigned, its value is used for a driving node (Fig. 3). The SFC is based on step, actions and transitions [2]. The step variable in the DFG is represented by a JK flip-flop equivalent. The activation function of a step is based on analysis of its dependencies with preceding and succeeding steps and transitions (Fig. 5). Actions that are bounded with steps are controlled according to their types (Fig. 6). The presented intermediated representation has been successfully applied to synthesize a PLC implemented in an FPGA device.
PL
W artykule przedstawiono automatyczną metodę syntezy układu sterowania danego w postaci diagramu stykowego LD lub listy instrukcji IL do sprzętowego układu sterowania implementowanego w układzie FPGA. Zaproponowana metoda pozwala uzyskać sprzętowy układ sterowania zachowujący sekwencyjne własności przetwarzania wynikające z zapisu LD i IL. Przedstawiony algorytm syntezy pozwala na dokonanie syntezy operacji logicznych i arytmetycznych. Istotnymi celami opracowanego algorytmu jest masowe przetwarzanie, redukcja cykli obliczeniowych oraz odwzorowanie w ograniczonej liczbie zasobów operacji arytmetycznych.
EN
The paper presents the synthesis algorithm of a ladder diagram (LD) or instruction list (IL) into a reconfigurable logic controller implemented in FPGA [5, 8, 9]. The algorithm incorporates synthesis of Boolean and fixed point arithmetic operations. It utilizes the intermediate form of the data flow graph (DFG) [4, 6]. PLCs introduce variable dependencies caused by serial processing of LD (Fig. 1). It has been proved that appropriate distribution of feedback signals allows implementing LD logic dependencies during a single calculation cycle (Fig. 2). The LD diagram is compiled into DFG that records variable dependencies. The presented optimization allows reducing the controller complexity and its response time in comparison to solutions presented in [2, 3] (Fig. 3). Arithmetic operations introduce larger implementation complexity and require more time to calculate than logic operation. The DFG generated from LD or IL is used for scheduling and mapping (Fig. 4). The scheduling and mapping procedure assumes the limited number of arithmetic resources while logic operations are allocated without constraints. The scheduling procedure takes into account operation execution timing (Fig. 4C). The obtained circuit after scheduling with arithmetic operations may require more than one cycle to complete all operations in comparison to the model limited only to logic operations. The presented synthesis procedure enables obtainment of fully functional hardware implementation of the controller given by LD or IL with massively parallel processing and a very short response time (1 to several clock cycles).
EN
The work presented in the paper concerns a very important problem of searching for string alignments. The authors show that the problem of a genome pattern alignment could be interpreted and defined as a measuring task, where the distance between two (or more) patterns is investigated. The problem originates from modern computation biology. Hardware-based implementations have been driving out software solutions in the field recently. The complex programmable devices have become very commonly applied. The paper introduces a new, optimized approach based on the Smith-Waterman dynamic programming algorithm. The original algorithm is modified in order to simplify data-path processing and take advantage of the properties offered by FPGA devices. The results obtained with the proposed methodology allow to reduce the size of the functional block and radically speed up the processing time. This approach is very competitive compared with other related works.
EN
The paper presents a set of algorithms dedicated for synthesis of reconfigurable logic controllers implemented on FPGA platform and programmed according to IEC1131 and EN61131. The program is compiled to hardware structure with a massive parallel processing. The developed method automatically allocates resources and operations. It controls resource usage and operation timing. Using mixed concept of operation allocation that considers operation timing and forms combinatorial chains of operations number of execution cycles can be reduced. An example of logic functions, PID controller and mixed arithmetic and logic programming examples are considered. Introducing the automatic implementation method allows flexible implementing the control algorithms. The maximal possible parallelism (limited only by the algorithm dependencies and available resources) is introduced.
PL
W artykule przedstawiono metodę odwzorowania operacji arytmetycznych przeznaczoną dla rekonfigurowalnych sterowników logicznych. Istotą opracowanej metody jest wykorzystanie własności układów sprzętowych oraz architektury FPGA. W procesie implementacji brane są pod uwagę czas realizacji obliczeń oraz ograniczone zasoby logiczne. W oparciu o metodę szacowania czasu propagacji zrealizowano metodę łańcuchowego łączenia operacji kombinacyjnych pozwalającą na wykonanie wielu operacji w cyklu obliczeniowym.
EN
The paper presents a package for arithmetic operation synthesis dedicated for reconfigurable logic controllers. Different representations (graphical or textual) commonly used are handled. The synthesis process starts from transforming algorithm representation into a data flow graph. The constant reduction and the tree height reduction optimization method are applied to the flow graph (Fig. 2). The developed method combines the ALAP and list allocation strategies with original elements. The main constraint is put to the number of available logic resources that can be allocated. The procedure attempts to allocate resources assuring it proper utilization in a calculation process. Together with resource allocation the operation scheduling is performed. During operation assignment the propagation time based concept of operation scheduling is used. The proposed method allows using sequential and combinatorial units. Operations are chained inside one state until total combinatorial propagation time does not exceed the assumed cycle time. This allows reducing the required number of calculation cycles by introducing combinatorial chains of operations (Figs. 3 and 4). Finally, an example of PID controller implementation is considered and compared with previous manual implementations (Fig. 5). Introducing the automatic implementation method allows reducing radically the calculation time (2.18 times) with little increase in hardware resources (+18%) (see Tab. 1).
PL
W artykule zaprezentowano implementację algorytmu obliczającego stopień podobieństwa sekwencji znaków (genów) do zadanego wzorca. Algorytm wywodzi się z biologii obliczeniowej. Rozwiązania programowe wymagają znacznych zasobów sprzętowych oraz czasu. W badaniach nad algorytmem główny nacisk położono na poznanie jego własności i ich wykorzystanie przy implementacji. Pozwoliło to stworzyć bardzo oryginalna implementację zapewniającą niezwykle oszczędne gospodarowanie zasobami w układzie programowalnym jak i uzyskanie bardzo wysokich częstotliwości pracy.
EN
The paper describes implementation of the computation algorithm in modern, complex programmable hardware devices. The presented algorithm originates from computation biology and works on very long chains of symbols which come from reference patterns of the genome. The software solutions in this field are very limited and need large time and space resources. The main research efforts were aimed at investigating the properties of the searching algorithm. Especially, the influence of the penalty values assigned to the mismatch, insertion and deletion on the algorithm was analysed. This allowed obtaining a completely new algorithm offering extremely efficient implementation and exhibiting the outstanding performance. The Virtex 5 FPGA family was considered to be a target family for the searching algorithm based on the dynamic programming idea. The obtained results are very promising and show the dominance of the dedicated platform over the general purpose PC-based systems.
EN
The paper presents optimized hardware structure applied to genome alignment search. The proposed methodology is based on dynamic programming. The authors show how starting from the original Smith-Waterman approach, the algorithm can be optimized and the evaluation process simplified and speeded-up. The main idea is based on the observations of growth trends in the adjacent cells of the systolic array, which leads to the incremental approach. Moreover various coding styles are discussed and the best technique allowing further reduction of resources is selected. The entire processing unit utilizes fully pipelined structure that is well balanced trade-off between performance and resource requirements. The proposed technique is implemented in modern FPGA structures and obtained results proved efficiency of the methodology comparing to other approaches in the field.
PL
Artykuł dotyczy zagadnień projektowania systemów czasu rzeczywistego z powtarzalnością, czasową. W pracy zaproponowano nową, oryginalną, architekturę wielozadaniową, elektronicznego systemu wbudowanego z przeplotem wątków. Opisano poszczególne elementy składowe systemu, szczególny nacisk położono na programowalny kontroler przeplotu, jednostkę odpowiedzialną za sterowanie kolejnością przetwarzanych wątków w potoku. Zaproponowano dodatkowe rozwiązanie układu arbitrażowego SDPA pracującego w tle, którego zadanie polega na dynamicznej rekonfiguracji przetwarzanych zadań. Przedstawiono uzyskane rezultaty implementacyjne i symulacyjne. Przedstawiono wnioski końcowe podkreślające elastyczność i uniwersalność zaproponowanego rozwiązania.
EN
The paper concerns design of real time systems that meet precision time (PRET) requirements. A new, original architecture of the multithread embedded system with programmable interleaved pipelining is introduced. Main components are described with special attention devoted to the interleave controller. This element of the system is responsible for controlling of the order of threads loaded into the processor's pipeline. The idea of shadow deadline processing arbiter responsible for dynamic reconfiguration of performed threads (tasks) is given. Results of the implementation and simulation of different arbitration schemes are discussed. Conclusions emphasizing the flexibility and advantages of the proposed solution summarize the paper.
PL
Artykuł porusza kluczowe zagadnienia związane z projektowaniem filtrów cyfrowych o pożądanej liniowej charakterystyce fazowej. Autorzy zaproponowali własną metodologię implementacji filtrów typu SOI oraz NOI. Następnie uzyskane rezultaty (struktury filtrów) zostały przeanalizowane teoretycznie pod kątem ich złożoności obliczeniowej. Wyniki tej analizy zostały zweryfikowane poprzez syntezę sprzętową struktur SOI oraz NOI w programowalnych układach logicznych typu FPGA. Dokonana została optymalizacja pod kątem jak najefektywniejszego wykorzystania dostępnych zasobów. Do realizacji użyto nowoczesne środowisko do modelowania i symulacji układów Active-HDL, które umożliwia współpracę z programem MATLAB.
EN
The paper deals with digital filters design with required linear phase characteristic. The authors proposed a new methodology of digital IIR and FIR filters implementation. The obtained results (filter structures) have been analyzed towards their computation complexity. Results of this analysis have been verified by the logic synthesis of IIR and FIR in FPGA. Then the structures have been optimized for best circuits resources utilization. The modern modeling and cosimulation environment Alcdec's Active-HDL with MATLAB has been used to complete the entire task.
PL
Maszyna deterministyczna czasowo, w odróżnieniu od typowej realizacji programowej pozwala na bardzo precyzyjną realizację zadania w czasie. Problem kolejności przetwarzania i dostępu do danych wspólnych, występujący we współbieżnej realizacji wielu zadań jest łatwy do opanowania. Artykuł przedstawia próbę implementacji wieloprocesorowej jednostki centralnej, wykorzystującej mechanizmy zapewniające determinizm czasowy. Obok implementacji przedstawiono również metodykę generacji wielowątkowego programu sterowania.
EN
Modern processors are optimized to execute instructions as fast as it is possible. A program is written in timeless domain. Problems of data integrity arise when facing a problem of concurrent multithread execution. The shared variables that are used by different threads must be processed in proper order, otherwise race conditions may occur, leading to incorrect results. A precision timed CPU helps to execute tasks in the precisely defined period of time. Time dependencies between properly scheduled tasks at compile time allow preserving the proper order of data processing. The proposed multi core CPU (Fig. 2) consists of 4 CPUs equipped with: local memory (MEM), time control units (TC - Fig. 3) and shared memory (SH_MEM). Time control unit allows controlling the execution time of a current task. The CPU loads to the TC required period of time and starts task execution. When the task is completed, CPU notifies TC which disables the instruction execution until passing the given period of time. The shared memory is constructed of dual port memory. It is equipped with arbitration unit with priority rotation that is able to properly split access requests. The control program is compiled to intermediate form of a directed acyclic graph (DAG - Fig. 1) which is then used to optimize the given problem and for scheduling purposes (Fig. 5).
PL
Artykuł przedstawia architekturę sterownika bitowego implementowanego w strukturze FPGA umożliwiającego wyeliminowanie złożonego procesu implementacji poprzez wykorzystanie odpowiedniej struktury sprzętowej i narzędzi programowania.
EN
The paper presents an idea of a Programmable Logic Controller for binary control implemented in an FPGA device with use of custom designed architecture and implementation tools. The solution does not require vendor synthesis and implementation tools except for final bitstream generation. It is an extension of the previously proposed architecture (Figs. 1 and 2). The architecture is based on a hardwired set of connections that is formed inside the FPGA device žLC units. The žLC can be programmed by means of LUT table modification. The architecture is mainly limited by the hardwired connection that bases on an invariant set of multiplexed signals delivered to the žLC. A new architecture is proposed, extending programmability of the architecture to programmable connections which are available in FPGAs (Figs. 3 and 4). The žLC architecture has also been modified and exactly fitted into the regular structure of an FPGA (Fig. 5). The new logic resources supplementing architecture modifications of the controller has been defined. They are input (Fig. 6) and output (Fig. 7) cells. The possible computation capabilities of FPGA devices are gathered in Tab. 1. The research task is in progress. A new solution with extended use of programmable connections, better exploitation of logic resources and easiness of logic synthesis and programming is searched for.
14
Content available remote Logic synthesis dedicated for CPLD circuits
EN
The paper presents synthesis strategies for PAL-based devices. All component methods used in presented strategies are originally developed. In this paper the essentials of all methods have been presented. Exact algorithms descriptions can be found in referenced materials. The optimization of synthesis methods were aimed toward required areas minimization or propagation delay minimization (reducing number of levels). A low computation complexity of synthesis methods that use tri-state output buffers or output graphs make them useful as additional steps of complex synthesis strategies. Application of those methods can radically reduce areas or propagation delay. Without doubt the best results in terms of required surface can be obtained by methods that use decomposition components. Decomposition methods that extend classical model of functional decomposition (Curtis' decomposition - row based and column based decompositions) are computing demanding procedures. The binary decision diagram was taken into consideration in order to increase computation performance/efficiency. The experience that has been gained in implementation of column and row based decomposition allows to implement efficient partitioning procedures for the BDD. Decomposition results for the BDD methods are slightly worse as referenced to previous approaches. The synthesis process is computation efficient and allows to decompose complex logic circuits in reasonable amount of time. The exploration of BDD decomposition methods shows their undiscovered potential that still can be developed especially for decomposition of function consisting of few hundred of input and output variables. Several years' of experience in design of decomposition procedures for CPLD allows developing complex synthesis strategies that have been presented as summary of the paper. They are dedicated for different CPLD families addressing different features (e.g. three-state output buffers) and requirements (e.g. propagation time constraint).
15
Content available remote Fast Operating PLC Based on Event-Driven Control Program Tasks Execution
EN
The paper presents modified idea of program execution in PLCs. Instead of serial cyclic execution of control program event-driven execution is proposed. Suggested approach to program execution allows for selective execution of program parts or tasks. Only these blocks from entire program are executed whose variables have changed since last calculation. Proposed method can be implemented as software modification or as hardware accelerated solution. The most important part of the idea is task or subprogram triggering condition computation. Methods of program optimization are discussed. In order to determine program blocks that require recalculation in current program scan execution specific hardware support is planned to be researched. Memory content change detection unit allows to determine changes in memory content since last program block execution.
16
Content available Samorekonfigurowalny system cyfrowy
PL
W artykule przedstawiono propozycję sprzętowej platformy samorekonfigurowalnej, implementowanej w układzie FPGA. Aby ułatwić zarządzanie konfiguracjami, został zaprojektowany niewielki rdzeń układu, pozwalający na szybką podmianę fragmentu konfiguracji układu. W celu ułatwienia procesu projektowania układów samorekonfigurowalnych, zaproponowano narzędzie przeznaczone do tworzenia projektu oraz generacji szkieletu modułów, jak i skryptów do przetwarzania wsadowego projektu.
EN
The paper propose the selfreconfigurable hardware platform implemented in an FPGA (Spar-tan II/ Spartan 3). The key factor of the design is hardware configuration manager. This is carefully designed small hardware core that manages system configuration. Based on request and configuration registration table it finds partial configuration bit stream start address in external memory and transfers it through SelectMAP interface. In the same it asserts internal BUSY signal until reconfiguration is completed and newly created circuit is properly initialized. There is also presented wizard for partial reconfiguration design flow. It allow to create design skeleton from signal definitions and their assignments between static and dynamic part of the design. Wizard automatically inserts configuration manager core. All those improvements allow to concentrate on implementing functionality instead of taking care of design processing details.
PL
Artykuł przedstawia metodę połączenia środowiska modelowania matematycznego MATLAB oraz Simulink ze środowiskiem przeznaczonym do modelowania systemów cyfrowych opartym na symulatorze zgodnym z normami języków Verilog i VHDL. Zaproponowane rozwiązania umożliwiają łatwą weryfikację i projektowanie urządzeń cyfrowych z wykorzystaniem podejścia algorytmicznego.
EN
The paper presents methodologies of interfacing a standard HDL simulation environment to MATLAB and Simulink environments. Two co-simulation environments are considered for MATLAB and Simulink respectively. There are several factors that must be resolved before smooth and efficient cosimulation is possible. In case of complex circuits performance is extremely important factor. There are considered problems of time synchronization, data conversion and communication between two different simulation environments. As simulator kernels are inaccessible for modification the optimization can only be introduced to linking library.
PL
W artykule przedstawiono architekturę dynamicznie rekonfigurowalnej jednostki sterownika binarnego implementowanego w układzie FPGA. Przeznaczony jest do wykorzystania w programowalnych sterownikach logicznych. Przedstawione rozwiązanie wykorzystuje technikę wielostrumieniowego przetwarzania równoległego. Regularna architektura znakomicie wpasowuje się strukturę FPGA, pozwalając na znaczne upakowanie oraz osiągnięcie wysokich częstotliwości pracy. Zaproponowana architektura korzysta z możliwości dynamicznej rekonfiguracji w czasie pracy układu, która oferowana jest przez nowoczesne układy FPGA. Przedstawiona architektura przyspiesza proces projektowania, gdyż pozostaje niezmienna za wyjątkiem generatorów tablicowych funkcji LUT.
EN
The paper presents architecture of the dynamically reconfigurable binary logic controller dedicated for PLCs. Presented solution takes benefits from multistream parallel processing. The symmetrical architecture perfectly fits into FPGA structure. It assures high logic denesity and close to maximal operation frequency. Presented architecture is able to be reconfigured during runtime taking benefits from modern FPGA configuration interfaces. Presented architecture optimize and speeds up design process while entire architecture remains unchanged except contentents of the LUTs.
PL
W artykule przedstawiono dekompozycyjne metody syntezy opracowane dla struktur CPLD typu PAL. Prezentowane metody stanowią rozwinięcie klasycznej teorii dekompozycji Ashenhursta-Curtisa. Przedstawiono również zastosowanie binarnych diagramów decyzyjnych w procesie dekompozycji opracowanych dla układów CPLD typu PAL.
EN
This paper presents decomposition based logic synthesis methods for PAL-based CPLDs. Presented methods are based on classical Ashenhurst-Curtis decomposition theory. There is also presented application of Binary Decision Diagram in logic decomposition for PAL-based CPLDs.
PL
W artykule przedstawiono zastosowanie diagramów BDD w procesie syntezy dla układów typu PAL. Diagramy BDD wykorzystywane są w procesie dekompozycji funkcji w celu szybkiego wyszukania możliwych do implementacji w pojedynczej komórce PAL podukładów.
EN
The paper presents the BDD based method of function decomposition for PAL-based devices. A BDD diagram is successfully used for function mapping for LUT based FPGAs [3]. In opposite to LUT-based circuits PAL-based devices are limited in number of products while number of inputs to the block is large (Fig. 1). Before decomposition procedure can be applied, function variables are ordered. Decomposition procedure searches BDD tree for suitable decomposition starting from variables with the largest index (just above terminals 0 and 1). When satisfying function is found its subtree is substituted by node that belong to newly created variable (Fig. 3 a,b,c,d). Procedure is applied iteratively until root node is reached. Decomposition procedure efficiency is proofed with use of ISCAS LG89 benchmarks. Obtained implementation results are compared to classical approach in Tab. 1.
first rewind previous Strona / 2 next fast forward last
JavaScript jest wyłączony w Twojej przeglądarce internetowej. Włącz go, a następnie odśwież stronę, aby móc w pełni z niej korzystać.