parameterizable cpu