FIR.py 1004 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. import os.path
  2. import numpy as np
  3. import itertools
  4. import Tools
  5. # Those patterns are used for tests and benchmarks.
  6. # For tests, there is the need to add tests for saturation
  7. def writeTests(config):
  8. NBSAMPLES=256
  9. NUMTAPS = 64
  10. samples=np.random.randn(NBSAMPLES)
  11. refs=np.random.randn(NBSAMPLES)
  12. taps=np.random.randn(NUMTAPS)
  13. samples = samples/max(samples)
  14. refs = samples/max(refs)
  15. taps = taps/max(taps)
  16. config.writeInput(1, samples,"Samples")
  17. config.writeInput(1, taps,"Coefs")
  18. config.writeInput(1, refs,"Refs")
  19. PATTERNDIR = os.path.join("Patterns","DSP","Filtering","FIR","FIR")
  20. PARAMDIR = os.path.join("Parameters","DSP","Filtering","FIR","FIR")
  21. configf32=Tools.Config(PATTERNDIR,PARAMDIR,"f32")
  22. configq31=Tools.Config(PATTERNDIR,PARAMDIR,"q31")
  23. configq15=Tools.Config(PATTERNDIR,PARAMDIR,"q15")
  24. #configq7=Tools.Config(PATTERNDIR,PARAMDIR,"q7")
  25. writeTests(configf32)
  26. writeTests(configq31)
  27. writeTests(configq15)
  28. #writeTests(configq7)