Skip to content

remziorak/AXI_DTW_IP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Dynamic Time Warphing

Dynamic Time Warphing (DTW) , is one of the algorithms for measuring the minimum cost distance between two time series data. In this project, DTW modules, which is available on DTW_Implementation repository , modified as AXI-based IP cores.

  • DTW_2F_32bit : Computes DTW(A, B) where A and B are dimension of 2 and length of 256. Each dimension represented as 16 bit signed integer.
  • DTW_4F_32bit : Computes DTW(A, B) where A and B are dimension of 4 and length of 256. Each dimension represented as 8 bit signed integer.
  • DTW_8F_32bit : Computes DTW(A, B) where A and B are dimension of 8 and length of 256. Each dimension represented as 4 bit signed integer.

Example RTL schematic given as following.

image

The IO ports shown in RTL schematic mapped on 6 register. This registers can be read and written by processor through AXI Interconnect. Register mapping shown in below table.

Register Port Name Description
reg0 data_in Input data to write the memory
reg1 data_addr Define the memory address to write the input data
reg2 sys_status Define the system status.
0 - IDLE
1 - TEMPLATE : Write the input data to the template memory
2 - TEST : Write the input data to the test memory
3 - COMP: Memories are ready. Compute the DTW value
reg3[0] en To enable the system
reg3[1] rst To reset the system (Active High)
reg4 dtw_out Output of the DTW
reg5 dtw_state_out To check the finish sign. When state value is b'1001 output of the DTW are ready.

Zybo Z7-20 ARM/FPGA SoC used as a development board and resource utilization tables for all DTW modules are given as following.

image

About

AXI Based Dynamic Time Warphing (DTW) IP Core

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published